碎碎念
input函数得到的永远是字符串,进行数值运算需要类型转换(eval等)同步赋值用于数据交换非常方便1.0 == 1→True5//2→22**3**4→2**(3**4)因为**是右结合的== 和 is 的区别内置算术函数(abs,max,min等)print输出默认换行
字符串
由一对单引号或双引号或三单引号括起来表示,无单个字符概念,均认为是字符串,交互式模式下计算机内部均以单引号表示字符串。字符串里可以用\表示斜杠。\表示转义,后加需要转义的字符。操作符(+连接两个字符串;字符串复制……遍,必须是整数与字符串相乘,0或负整数与字符串相乘结果为空字符串;in/not in成员运算符,结果为布尔值True(需为连续的子串)或False;str[i]返回第i个字符;str[N:M]切片,返回第N到第M子串,但不包含M,M,N可以为空但*😗*必须保留,只能从左往右取,否则返回一个空字符串;str[M:N:c]按步长s取,str[7:2:-1]/str[::-1]反向取)可以用for循环进行字符串遍历for c in str:索引时字符串最左端标记为0,最右端标记为-1(判断三位数是否是水仙花数)
方法(method)和函数(function)
通过对象调用的函数,也是函数的一种,如s.lower()。函数是通过函数名称来调用的内置字符串函数len()返回字符串长度,每个汉字、标点符号、空格长度都是1,也可以获取元组、列表、集合的长度;str()强制转化为字符串类型;chr(x)返回Unicode编码x对应的单字符,不能是一个负数;ord(x)返回单字符对应的Unicode编码方法:① s.lower() ; s.upper() ;② s.isdigit() 当s所有字符都是阿拉伯数字时,返回True,否则返回False;③ s.isspace() 当s所有字符都是空格时,返回True,否则返回False; ④s.endswith(suffix[,start[,end]]) s[star:end]以suffix结尾返回True,否则返回False; ⑤s.startswith(prefix[,start[,end]]) s[star:end]以prefix开始返回True,否则返回False(eg:s.endwith("省“)、s.startswith("省”,1,5),在第一个和第五个字符之间判断是否以某一字符开头)⑥format格式化函数
format函数
改变参数填充顺序,format中提供的参数可以多不能少,但是添加顺序标记时可以少 eg:
"{1},{1},{0}".format(1,2,3)
输出结果:
'2,2,1'
字符串截断
"{:.2}".format("abc")
'ab'
对齐
"{:>5}".format("abcde")
'abcde'
>>> "{:>5}".format("abcd")
' abcd'
>>> "{:#>5}".format("abcde")
'abcde'
>>> "{:#>5}".format("abcd")
'#abcd'
字符串格式化规则
填充、对齐方式和宽度一般一起使用,其中对齐方式是必不可少的,填充字符可以省略,默认填充空格,宽度可以省略,宽度省略时设置对齐方式就失去意义填充宽度小于实际宽度时,按实际宽度显示千位符只能用于整数和浮点数,精度只能用于浮点数或字符串,当用于浮点数时,如果类型未设置,则显示为科学计数法类型一般情况需要和参数的类型匹配,当参数为整数类型时,类型可以使用浮点数,其他类型不能混用
字符串的比较
<、>等允许整数、浮点数、布尔值之间可以比较小写字母>大写字母>数字的顺序(Unicode编码)
"abc">"ABC"
输出结果
Ture
"abcd">"abc"
输出结果
Ture