python3内建模块-str类使用补充
1、转义与反转义
转义字符的机制是为了表示某些无法编辑输入或者与python编程语言冲突的字符而存在。其特征是前缀字符\。
有时候,不想使用转义机制,可以在字符串前面使用r前缀,字符串将按照本身的字符输出。
a = 'abc\"' # 输出:abc"
b = r'abc\"' # 输出:abc\"
转义字符 | 描述 |
---|---|
(在行尾时) | 续行符 |
\ | 反斜杠符号 |
‘ | 单引号 |
“ | 双引号 |
\a | 响铃 |
\b | 退格(Backspace) |
\e | 转义 |
\000 | 空 |
\n | 换行 |
\v | 纵向制表符 |
\t | 横向制表符 |
\r | 回车 |
\f | 换页 |
\oyy | 八进制数,y 代表 0~7 的字符,例如:\012 代表换行。 |
\xyy | 十六进制数,以 \x 开头,yy代表的字符,例如:\x0a代表换行 |
\other | 其它的字符以普通格式输出 |
2、unicode
unicode字符,实际是一种特殊的转义字符,由\uxxxx进行转义引起。也遵循加r不转义
print('\u0051ab') # Qab
print(r'\u0051ab') # \u0051ab
3、索引与运算
将字符串视作由多个字符组成的list,具有和list类似的操作。
字符串支持正向和反向索引,也支持+,*,in和not in运算,但是不支持del
通过+运算符可以实现字符串之间的拼接,但是字符串不能与非字符串的类型直接拼接,必须对其它类型使用str()函数转换
4、格式化
(1)%形式
s = '%s,123'%('张三')
print(s)
- %格式化,如果只有一个参数,参数可以不用()包围
(2)f{}形式
s2 = f'hello,{123}'
# s3 = f'{1+2=}'
print(s2)
- 参数可以是字面量、变量或者运算式