PYthon笔记
print函数
print函数可以输出含有运算符的表达式
也可以将内容输出到目的地(显示器、文件)如:
``
1 | fp = open('D:/text.txt', 'a+')(如果文件不存在就创建,存在就继续写。指定路径) |
转义字符
\n:newline(换行)
\t:回车(占四个制表位)如:hello\t:后面有三个空格,因为hell是四个,\t本来是四个,加上o就有三个了
\b往后退一个格,比如hello\bworld>>>hellworld
\r对前面进行覆盖:比如hello\rworld>>>world
\\:运行的时候只会输出一个\
原字符:不希望字符串中的转义字符起作用,就使用原字符,在字符串之前加上r
print(r'hello\nworld')
最后一个字符串不能是反斜杠,但可以是两个:print('helloworld\\')
数据类型
整数类型:默认的是十进制;0b开头是二进制;0o开头是八进制;0x开头是十六进制
print(0b10010)
浮点类型:由于计算机使用二进制进行计算,所以结果可能出现小数位数不确定的情况
``
1 | n1 = 1.1 |
那么解决的方案就是导入模块decimal(from decimal impory Decimal)
数据类型转换
print(name + age)
(其中,str类型不能和int型一起输出,要将int通过str函数转换为str型)
print(name + str(age))
str()函数:将其他类型转换为str类型
int()函数:文字类和小数类字符串无法转换,浮点数转化成整数抹零取整
float()函数:文字类无法转成整数,整数转化为浮点数,末尾为 .0
输入函数input
input()函数的输出类型是整数,故我们如有需求需要用到类型转换函数如:int(),float()
算数运算符
//:整除运算,11 // 2 = 5 而不是 5.5
(一正一负的整除运算,向下取整如:-5 // 3 = -2
)
%:取余运算符,5%3 = 2
(一正一负运算:9% -4 余数 = 被除数 - 除数*商 9 - -4 * -3 = -3
)
*:幂运算符,2 * * 2 = 4
range函数
range(start):默认从[0-start),步长为1
range(start,stop):从[start,stop],步长为1
range(start,stop,step):从[start,stop],步长为step
range通常会作为循环遍历的对象
for_in循环
for item in 'Python'
(第一次取出来P,将P赋值给item,将item的值输出)
如果不需要用到自定义变量(上式中item就是自定义变量),可以用“_”代替,如:
for _ in range(5)
:接下来的表达式会重复五次
continue
结束循环,进行下一次循环
经常跟if联用
列表
创建的方式①使用[]:
1 | a = ['hello','world',12] |
②使用内置函数list()
1 | b = list(['hell','god']) |
可以通过索引去打印列表中的数据,如
列表的判断和遍历
用来判断是否存在,如
1 | print('a' in 'abc') #结果为true |
列表的遍历:
1 | b = ['a','b','c'] |
列表的添加
append():在末尾添加一个元素
extend():在末尾至少添加一个元素
insert(位置,元素):在任意位置添加一个元素
切片:
1 | a = ['a','b','c'] |
列表的添加
remove():一次删除一个;重复元素只删除第一个;元素不存在输出value error
pop():删除一个指定位置上的元素;指定位置不存在元素,输出index error;如果不指定位置,删除最后一个
切片:一次至少删除一个
1 | a = ['a','b','c','d','e','f'] |
clear():清空列表
del:删除列表
列表元素的修改
直接
1 | a [1] = 新元素 |
或者切片
1 | a = ['a','b','c','d'] |
列表的排序
sort():升序排列
通过关键字降序排列
sort(reverse = True)
那么reverse = False 就是升序
使用内置函数sorted(),使产生新的列表对象
也可以在sorted函数里使用关键字
1 | b = sorted(a,reverse = False) |
生成列表的公式
1 | a = [表达式 for 自定义变量 in range()]#表达式的变量使用自定义变量:如 |
字典
字典是Python内置的数据结构之一,与列表一样是一个可变序列,以键值对的方式存数据,字典是一个无序的序列,如:
字典的实现原理
与查字典类似,我们用key值(也就是键)去寻找值的位置
字典的创建
常用:
1 | scores={''a:1,'b':2,'c'=3} |
使用内置函数dict()
1 | dict(name = 'a','age' = 18) |
还有空字典
1 | d = {} |
字典的常用操作
获取字典中的值:
第一种:使用 []
1 | print(scores['a']) |
第二种:使用get方法
1 | print(scores.get('a')) |
第一种:如果key是错误的,那么会报错:key error;第二种输出None
1 | print(scores.get('g',123)) |
这个g是找不到的,但是会输出123;找不到就会输出设定的默认值
key的判断
1 | print('a' in scores) |
字典元素的删除
1 | del scores['a']#删除指定的key和value对 |
字典元素的新增
1 | scores['g']=123#也可以用这个方法修改 |
获取字典视图
1 | keys()#获取字典中所有的key |
字典元素的遍历
1 | for item in scores: |
字典的特点
①字典中的元素都是一个key和value对,key不允许重复,value可以重复
②字典中的元素是无序的
③字典中的key必须是不可变动对象
④字典也可以根据需要动态的伸缩(不需要分配多大的空间)
⑤字典会浪费较大的内存,是一种使用空间换时间的数据结构
字典生成式
使用内置函数zip()
用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表
1 | key = ['a','b','c'] |