Python个人学习笔记 字符串与格式化输出
字符串的几个返回布尔值的方法
⑴isalnum() 判断所有的字符都是数字或字母

我也不知道所谓的字母范围有多广,标点还有其他符号等返回False。
⑵isalpha() 判断所有的字符都是字母

不多赘述。
⑶isdigit() 判断所有的字符都是数字

isdecimal()只能判断十进制数字0~9,不能判断上下标。
isdigit()能判断上下标和序号。
但都不能判断汉字数字、罗马数字等。
⑷isidentifier() 判断字符串是否为有效的标识符

需要注意的是,这个方法只能判断是否合法,不能判断是否能用作变量名。
⑸islower() / isupper() / istitle() 判断所有的字符是否都为大小写

对应于3个方法:lower()、upper()、title()。很好理解。
可以判断希腊字母、俄文等字母的大小写。
⑹startswith() / endswith() 判断是否为字符串的前缀或后缀

空串''和字符串本身既是前缀又是后缀。
⑺isprintable() 判断字符串是否可打印 / isspace() 判断字符串是否为空白字符

\b:退格符 \r:回车符 \f:换页符 \v:垂直制表符
可打印指不能显示或者不能直接用键盘输入的。空格可以用键盘输出,所以是可打印的。
空白字符指看不到的字符,但是会打印出可见空间。

其他
⑴strip() / lstrip() / rstrip() 剥离开头和结尾/开头/结尾的字符串

会把原字符串两端的包含在要剥离的字符串中的所有字符都剥离。
默认为空格和换行符。
⑵ljust() / rjust() / center() 左对齐/右对齐/中心对齐

第一个参数为总长度,总长度小于字符串长度时无事发生。
第二个参数为填充字符,默认为空格。
居中不能完美对齐时会优先填充在左边。
⑶zfill() 右对齐并用0填充(前导0)

与 rjust(width,'0') 的区别是,zfill()填充的0会作为数字的一部分。比如是负数时,会填充在符号和数字之间。
⑷swapcase() 将字符串中字母的大小写互换

⑸casefold() 将字符转换为小写

比 lower() 作用范围更大。
⑹eval() 将字符串类型的数学表达式计算成数字

⑺int() 任意进制数(2~36进制)转换为十进制数

⑻b'' 字节串

通常用于处理二进制数据,比如读写文件时、网络传输数据等。

格式化输出
3个转字符串函数str() repr() ascii()

repr()
repr()会输出规范的源代码的表示形式,例如换行符会输出\n、字符串会在两端加引号等。
ascii()
在repr()基础上还会转义非ASCII字符。

%语法
输出字符串时,可以用%s %r %a分别调用str() repr() ascii()三个函数。

可变长度输出:可以在指示整数的位置用*表示,此时必须在元组中额外传入参数来代替*。
参数在数据参数的前面。


format()函数/方法
format()函数一次只能处理一个数据。
''.format()方法的具体格式为 '{[position][[!r|s|a][:spec]]}'。
可以用!s !r !a分别调用3个函数。

语法:spec具体为 [:[fill[align]][sign][#][0][width][,][.prec][type]]。
fill为填充字符。align为对齐方式,>右对齐、<左对齐、^居中对齐、=数字填充。
可参考rjust() ljust() center() zfill()。
对齐方式必须要有填充字符才能用。

数字填充相比于zfill()可以使用其他字符来填充。
sign:+ - 空格
+:非负数前输出正号、负数前输出负号。
-:仅输出负号。
空格:对于非负数在前面输出空格,用于和负数整齐排列。

#:当使用二、八、十六进制时,在前面加上基数前缀。

0:前导0。
,:千位分隔符。前导0作为数字的一部分,也会被加上千位分隔符。

可变长度输出
参考%语法的可变长度输出。但是与%语法不同,数据参数放在参数的前面。

甚至可以用来放语法。

由于大括号表示参数,如果要输出大括号,则需要双写括号来转义。

f''为format()的缩写。
虽然更简洁,但没法像format()方法那样花里胡哨。

format()方法可以直接换行,f''换行得要再加个f''。