python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python %操作符格式化字符串

Python如何利用%操作符格式化字符串详解

作者:为时不晚,只争朝夕

%是Python风格的字符串格式化操作符,非常类似C语言里的printf()函数的字符串格式化,下面这篇文章主要给大家介绍了关于Python如何利用%操作符格式化字符串的相关资料,需要的朋友可以参考下

前言

Python的%操作符可用于格式化字符串,控制字符串的呈现格式。

使用%操作符格式化字符串的模板格式如下:

%[( name )][ flags ][ width ].[ precision ] typecode

1、字符串模板的参数

name :可选参数,当需要格式化的值为字典类型时,用于指定字典的 key 。

flags :可选参数,可供选择的值如下:

+:表示右对齐,正数前添加正号,负数前添加负号。
- :表示左对齐,正数前无符号,负数前添加负号。
空格:表示右对齐,正数前添加空格,负数前添加负号。
0:表示右对齐,正数前无符号,负数前添加负号,并用0填充空白处。

width :可选参数,指定格式字符串的占用宽度。

precision :可选参数,指定数值型数据保留的小数位数。

typecode :必选参数,指定格式控制符。

2、格式控制符

格式控制符用于控制字符串模板中不同符号的显示,例如,可以显示为字符串、整数、浮点数等形式。

例 3-2 用 %操作符格式化字符串:

#显示十进制数,将浮点数转换为十进制数
>>> "%d %d"%(12,12.3)
'12 12'
#设定十进制数的显示宽度
>>> "%6d %6d"%(12,12.3)
'    12     12'
#设定十进制数的显示宽度和对齐方式
>>> "%-6d"%(12)
'12    '
#以浮点数方式显示
>>> "%f"%(100)
'100.000000'
#以浮点数方式显示,并设置其宽度和小数位数
>>> "%6.2f"%(100)
'100.00'
#以科学计数法表
>>> "%e"%(100)
'1.000000e+02'
#显示字符串和整数,并分别设置其宽度
>>> "%10s is %-3d years old"%("Rose",18)
'      Rose is 18  years old'

3、格式化操作符辅助符

通过”%”可以进行字符串格式化,但是”%”经常会结合下面的辅助符一起使用。

辅助符号 说明
* 定义宽度或者小数点精度
用做左对齐
+ 在正数前面显示加号(+)
# 在八进制数前面显示零(0),在十六进制前面显示”0x”或者”0X”(取决于用的是”x”还是”X”)
0 显示的数字前面填充”0″而不是默认的空格
(var) 映射变量(通常用来处理字段类型的参数)
m.n m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)

总结

到此这篇关于Python如何利用%操作符格式化字符串的文章就介绍到这了,更多相关Python %操作符格式化字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文