为了账号安全,请及时绑定邮箱和手机立即绑定

深入浅出Python字符串格式化

标签:
Python

字符串格式化操作符(%),非常类似于C 语言里面的printf()函数的字符串格式化,甚至所用的符号都一样,都用百分号(%),并且支持所有printf()式的格式化操作。语法如下:

format_string % string_to_convert

format_string为格式标记字符串,形式为“%cdoe”;string_to_convert 为要格式化的字符串,如果是两个以上,则需要用小括号括起来。


字符串格式化符号

格式化符号说明
%c转换成字符(ASCII 码值,或者长度为一的字符串)
%s转换成字符串,优先用str()函数进行字符串转换
%d转成有符号十进制数
%u转成无符号十进制数
%o转成无符号八进制数
%x(Unsigned)转成无符号十六进制数
%e转成科学计数法
%%输出%
%X(Unsigned)转成无符号十六进制数,转换后16进制字符大写,和%e类似(转换后小写)

字符串格式化输出举例:

charA = 65
charB = 66
print("ASCII码65代表:%c" % charA)
print("ASCII码66代表:%c" % charB)
Num1 = 0xEF3
Num2 = 0xAB03
print('转换成十进制分别为:%u和%u' % (Num1, Num2))
Num3 = 1500000
print('转换成科学计数法为:%e' % Num3)

输出:

ASCII码65代表:A

ASCII码66代表:B

转换成十进制分别为:3827和43779

转换成科学计数法为:1.200000e+06


格式化字符还可以配合辅助符号一起使用,非常方便。

辅助符号,如下表所示:

辅助符号说明
*定义宽度或者小数点精度
-用做左对齐
+在正数前面显示加号(+)
<sp>在正数前面显示空格
#在八进制数前面显示零(0),在十六进制前面显示“0x”或者“0X”(取决于用的是“x”还是“X”)
0显示的数字前面填充“0”而不是默认的空格
m.n是显示的最小总宽度,n 是小数点后的位数

注意:辅助符号要在百分号(%)和格式化符号之间。


辅助符号举例:

Num1 = 108
print("%#X" % Num1)
Num2 = 234.567890
print("%.2f" % Num2)

输出:

0X6C

234.57

原文来源:https://m.pythontab.com/article/1023


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消