链式赋值用于同一个对象赋值给多个变量。 x=y=123 相当于 x=123;y=123
系列数据赋值给对应相同个数的变量(个数必须保持一致) 常量 Python不支持常量,即没有语法规则限制改变一个常量的值。我们只能约定常量的命名规则,以及在程序的逻辑上不对常量作出修改。
1.整型 整数 2.浮点型 小数 3.布尔型 4.字符串型
(只列出特殊的,剩余和其他语言同) 浮点数除法 eg:8/2 4.0 整数除法 eg: 7//2 3 模(取余) eg:7%4 3 幂 eg: 2**3 8 divmod()同时获得商和余数
二进制 0b或0B 0 1 八进制 0o或0O 0 1 2 3 4 5 6 7 十六进制 0x或0X 0 1 2 3 4 5 6 7 8 9 a b c d e f 用于“位运算”操作
1.浮点数直接舍去小数部分。 2.布尔值True转为1,False转为0。 3.字符串符合整数格式(浮点数格式不行)则直接转成对应整数,否则报错。 自动转型 整数和浮点数混合运算,表达结果自动转型为浮点数。 Python3可以做超大数的运算!
3.14表示成314E-2或者314e-2 类型转换和四舍五入 1.类似于int(),我们也可以使用float()将其他类型转化成浮点数。 2.整数和浮点数混合运算时,表达式结果自动转型成浮点数。 3.round(value)可以返回四舍五入的值 注:但不会改变原有值,而是产生新的值。 “+=”之间不能加空格,其他同
True 1 False 0 比较运算符 逻辑运算符 同一运算符 is与==区别: is: 比较地址(是不是同一个对象) ==:比较值 is运算符比==效率高,在变量和None进行比较时,应该用is。 整数缓存问题 交互模式:[-5,256] 文件:[-5,任意正整数]
#文件形式同一运算 a=100000 b=100000 print(a==b) print(a is b) m=-6 n=-6 print(m==n) print(m is n)
本质:字符序列 特点:不可变 "a"也是字符串,长度为1的字符串 单引号或双引号创建字符串 连续三个单引号或者连续三个双引号,可以帮助我们创建多行字符串。 字符串的编码 16位的Unicode编码,可以表示世界上任何书面语言的字符。 ord():把字符转换成对应的Unicode码; chr():把十进制数字转换成对应的字符。 空字符串和len()函数 转义字符 字符串拼接:
用+ 直接放到一起实现拼接字符串复制
不换行打印:print函数自动打印一个换行符。不想换行,通过参数end=“任意字符串”。
print("aa",end="*") print("bb",end="*") print("cc")从控制台读取字符串 str()实现数字、布尔值等转型字符串 使用[]提取字符: python从0开始 正向搜索:最左侧第一个字符,偏移量是0,第二个偏移量是1,以此类推。直到len(str)-1为止。 反向搜索:最右侧第一个字符,偏移量是-1,倒数第二个偏移量是-2,以此类推,直到-len(str)为止。
创建了新的字符串对象,并指向了变量a,而不是修改了以前的字符串。
[起始偏移量start : 终止偏移量end : 步长 step] 包头不包尾 [ , )
split()可以基于指定分隔符将字符串分隔成多个子字符串(存储到列表中)。如果不指定分隔符,则默认使用空白字符(换行符/空格/制表符)。
join()将一系列子序列字符串连接起来。
【操作】测试+拼接符和join(),不同的效率
import time time01=time.time()#起始时刻 a="" for i in range(1000000): a+="sxt" time02=time.time()#终止时刻 print("运算时间:"+str(time02-time01)) time03=time.time()#起始时刻 li=[] for i in range(1000000): li.append("sxt") a="".join(li) time04=time.time()#终止时刻 print("运算时间:"+str(time04-time03))join()效率更高!
字符串驻留:仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串驻留池中。Python支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线(_)、字母和数字)会启用字符串驻留机制。
in not in
cencer()居中 ljust()左对齐 rjust()右对齐
str.format() 通过{}和:来替代以前的%。 format函数可以接受不限个参数,位置可以不按顺序。
>>> a='名字是:{0},年龄是:{1}' >>> a.format('ZMD',22) '名字是:ZMD,年龄是:22' >>> b='名字是:{0},年龄是{1},{0}是大好人' >>> b.format("ZMD",22) '名字是:ZMD,年龄是22,ZMD是大好人' >>> c="名字是{name},年龄是{age}" >>> c.format(age=22,name='ZMD') '名字是ZMD,年龄是22'填充与对齐一起使用 ^ 、< 、>分别是居中、左对齐、右对齐,后面带宽度。 :号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充。 数字格式化