Python格式化字符串详解:百分号%标记及各种数据类型格式描述

格式总结:

Python格式化字符串详解:百分号%标记及各种数据类型格式描述

格式说明 格式说明

%%

百分号%标记(多余的%是转义函数)

%c

字符及其 ASCII 代码

%s

细绳

%d

有符号整数(十进制)

%u

无符号整数(十进制)

%o

无符号整数(八进制)

%x

无符号整数(十六进制)

%X

无符号整数(十六进制大写字符)

%e

浮点数(科学计数法)

%E

浮点数(科学计数法,将e替换为E)

%f

浮点数(带小数点符号)

%g

浮点数(根据值自动选择%e或%f)

%G

浮点数(与%g类似,根据值自动选择%E或%f)

%p

指针(十六进制打印值的内存地址)

%n

将输出字符数存储在参数列表中的下一个变量中

不过,由于python中的所有内容都可以转换为字符串类型,因此如果没有特殊需求,可以使用'%s'来标记所有内容。

例如: '%s %s %s' % (1, 2.3, ['一', '二', '三'])

它的输出是'1 2.3['一','二','三']',是根据%左边的标记输出的。

虽然第一个和第二个值不是字符串类型,但是仍然没有问题。

【这个过程中,当计算机发现第一个值不是%s时,会先调用整型函数将第一个值1转换为字符串类型,然后调用str()函数输出。 ]

上面只是最简单的格式标记形式。让我们看看更复杂的:

指定输出长度:

“%6.2f”% 1.235

在这种形式中,f前面出现了一个类似小数的6.2,这意味着输出总长度为6个字符,其中有2位小数。

还有更复杂的:

占位符:

'.2f' % 1.235

6前面多了一个0,表示如果输出位数少于6位,则用0补足6位。

该行的输出是“001.24”。可以看到小数点也占一位。

这里类似于0的标记包括-和+。其中-表示左对齐,+表示在正数前面也标注一个+号,默认不加。

例子:

%ns:如果字符串变量s小于n位,则先输出若干空格,然后输出str1。

%-ns:与上面相反,先输出变量s,然后用空格填充任何不足的地方。

其他:

字典格式的输出:

'%(name)s:%(score)06.1f' %{'score':9.5, 'name':'newsim'}

仅当要输出的内容是字典时才使用这种形式。括号中的(name)和(score)对应以下键值对中的键。

有时在%6.2f的形式中,6和2不能预先指定,在程序运行过程中会再次生成。那么如何输入呢?当然,您不能使用%%d.%df 或%d.%d%f。 。

可以使用%*.*f的形式,当然这两个*值会被包含在后面的“要输出的值组”中。

例如: '%*.*f' % (6, 2, 2.345) 相当于 '%6.2f' % 2.345。

但是,如果你记不住,或者不想那么耐心,你完全可以将它们全部替换为 %s,或者使用多个“+”来构造类似的输出字符串。

你可能想看:
« 上一篇
下一篇 »

相关推荐

python爬虫教程PDF,Python爬虫书PDF

2026年09月02日

31阅读

外国教程python,python编程教学视频

2026年09月02日

25阅读

python简明教程沈洁元,python详细基础教程

2026年09月02日

21阅读

python库包教程,python 包

2026年09月02日

27阅读

python教程大全集,python教程600集

2026年09月02日

26阅读

python入门教程完整版,python零基础入门全套教程视频

2026年09月02日

22阅读