Python数据类型之“文本序列(Text Sequence)”(5)

上面示例中,格式字符串中的 %d, %(a)d称为“转换说明标识符”。这个标识符可以由2个或多个部分组成,且各部分必须按照指定的顺序排列:

'%'字符:表示“转换说明标识符”的开始;

映射键名称(Mapping key): 可选部分,由小括号包含的字符串序列组成,如:(name);

转换标识(Conversion flags):可选部分,这个会影响一些转换类型的结果;如:'0'表示用数字字符0进行填充,'-'表示左对齐(用空白字符进行右填充)

最小字段宽度(Minimum field width): 可选部分,指定转换结果的最小宽度

精度(Precision): 可选部分,通过".精度值"的方式来指定小数点后保留几位小数

长度修饰符(Length modifier): 可选部分

转换类型(Conversion type): 用于指定数据类型;常用的转换类型有 'd'或'i'表示有符号十进制整数,'f'或'F'表示浮点数,'s'表示字符串, '%'表示其本身

由上可见,在“转换说明表示符”的7个组成部分中,只有第1部分"%",和最后一部分"转换类型"是必须的指定的,其他部分都是可选的辅助项。另外,长度修饰符(h,l或L)可以存在,但是将被忽略,因为对于Python不是必要的。也就是说,ld与%d是相同的。

>>> student01 = {'name': 'Peter', 'sno': 15, 'age': 22, 'score': 93.92532} >>> msg = ''' ... ##### Information of student: %(name)s ##### ... 姓名:%(name)s ... 学号:%(sno)010d ... 年龄:%(age)d ... 得分:%(score).2f ... ----- end ----- ... ''' % student01 >>> print(msg) ##### Information of student: Peter ##### 姓名:Peter 学号:0000000015 年龄:22 得分:93.93 ----- end ----- >>>

本文永久更新链接地址

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/376691c4fd370ae2109cb5e009cbf851.html