0
点赞
收藏
分享

微信扫一扫

Python 序列 - 转义字符、字符串格式化表达式

暮晨夜雪 2021-09-29 阅读 60

一. 转义序列表示的特殊字符

转义序列 含义
\' 代表一个单引号
\" 代表一个双引号
\\ 代表一个反斜杠
\n 换行
\r 返回光标至首行
\f 换页
\v 垂直制表符
\t 水平制表符
\b 删除一个字符再打印,相当于 Backspace 按键
\0 空字符(字符值为 0)
\0oo oo 代表 2 位 8 进制数,\0oo 代表 2 位 8 进制表示的字符
\xXX XX 代表 2 位 16 进制数,\xXX 代表 2 位 16 进制表示的字符
>>> print("ABCD\rab")
abCD
>>> print("ABCD\bd")
ABCd

二. raw 字符串

raw 字符串又被称为原始字符串,支持以下格式:

r'字符串内容'
r"字符串内容"
r'''字符串内容'''
r"""字符串内容"""

raw 字符串之所以被称为原始字符串,是因为他可以使转义 \

>>> print('C:\newfile\test.py')
C:
ewfile  est.py

不使用 raw 字符串时,字符串中出现的 \n\t 均进行了转义,显然于我们预期的结果不符。正确的方式如下:

>>> print(r'C:\newfile\test.py')
C:\newfile\test.py

三. 字符串格式化表达式

字符串格式化运算符 %,用于生成一定格式的字符串。语法如下:

格式字符串   %    参数值
格式字符串   %    (参数值1,参数值2,...)

类型码

下面的表格整理了常见的格式化字符串中的占位符类型码:

占位符 含义
%s 字符串,使用 str 函数转换
%r 字符串,使用 repr 函数转换
%c 整数转换为单个字符
%d 十进制整数
%o 八进制整数
%x 十六进制整数(a - f 小写)
%X 十六进制整数(A - F 大写)
%e 指数型浮点数(e 小写),科学计数法表示
%E 指数型浮点数(E大写),科学计数法表示
%f %F 浮点十进制形式
%g%G 十进制形式浮点数或指数型浮点数
%% 一个 %

示例如下:

>>> ord('中'), ord('国')
(20013, 22269)
>>> "我爱你%c%c!" % (ord('中'), ord('国'))
'我爱你中国!'
>>> "%e" % 0.00000000003
'3.000000e-11'
>>> "%g" % 0.03
'0.03'
>>> "%g" % 0.000000000037865558
'3.78656e-11'
>>> "%d%%" % 30
'30%'

占位符和类型码之间的格式语法

格式字符串中的 % 为占位符,占位符和上文介绍的类型码之间还可以添加以下符号,进行进一步的格式控制。

符号 含义
- 左对齐(默认为右对齐)
+ 显示正号(如果参数值为负数,减号默认会显示出来)
0 左侧空白位置补 0
宽度 整个数据输入的宽度
精度 保留小数点后多少位(默认是 6 位)

示例如下:

>>> '%10d' % 12308
'     12308'
>>> '%-10d' % 12308
'12308     '
>>> '%10s' % 'python'
'    python'
>>> '%010d' % 12308
'0000012308'
>>> '%-+10d' % 12308
'+12308    '
>>> '%-+10d' % -12308
'-12308    '
>>> '%20.2f' % 12308.12345678909876542
'            12308.12'
举报

相关推荐

0 条评论