鱼C论坛

 找回密码
 立即注册
查看: 1750|回复: 0

[技术交流] 字符串的格式化

[复制链接]
发表于 2019-11-3 19:46:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
字符串的格式化
格式化字符串就是按照统一的规格去输出字符串
用{}表示replacement的字段
1.Format
1)位置参数
>>> "{0} love {1}{2}".format ("I","Z","M")
'I love ZM'
>>> "{0} love {1}{2}".format ("I", "Z", "M")
'I love ZM'
>>> "{0} love {1}{2}".format ("I"  ,   "Z",   "M")
'I love ZM'
2)关键字参数
>>> "{a} love {b}{c}".format(a= 'I' ,b='Z' ,c= 'M')
'I love ZM'
二者可以混合使用,位置参数要在关键字参数之前
>>> "{0} love {b}{c}".format('I' ,b='Z' ,c= 'M')
'I love ZM'
"{a} love {b}{2}".format(a= 'I' ,b='Z' ,'M')
SyntaxError: positional argument follows keyword argument

3){{}}为转译{},需要输出{}时使用
>>> '{{0}}'.format ('雾溟潇湘')
'{0}'

4)在替换域中,冒号表示格式化符号的开始,后面接格式化符号
>>> '{0:.2f}'.format (520.1314)
'520.13'
>>> '{0:.1f}{1}'.format (520.1314,'生1世')
'520.1生1世'
.1表示四舍五入保留小数点后1位;.2表示四舍五入保留小数点后两位;f是打印出定点数

2.字符串格式化操作符
%  : 遇到字符串时为格式化操作符。
%c :  格式化字符及其 ASCII 码
>>> '%c' % (98)
'b'
>>> '%c %c %c' % (98,101,111)
'b e o'
>>> '%c%c %c' % (98,101,111)
'be o'
%s :  格式化字符串


%d:  格式化整数
>>> '%d + %d = %d' % (4,5,4+5)
'4 + 5 = 9'
%o:  格式化无符号八进制数
%x:  格式化无符号十六进制数
%X:  格式化无符号十六进制数(大写)
>>> '%o' %(10)
'12'
>>> '%x' %(10)
'a'
>>> '%X' %(11)
'B'
十进制:1010 = 1*103+0*102+1*101+0*100
二进制:1010 = 1*23+0*22+1*21+0*20
十六进制:1*163+0*162+1*161+0*160
%f: 格式化定点数,可以指定小数点后的精度
>>> '%f' % (5201314)
'5201314.000000'
默认六位数
%e: 用科学计数法格式化定点数
>>> '%e' % (5201314)
'5.201314e+06'
%E:作用同上
>>> '%E' % (520131415)
'5.201314E+08'
%g:根据值的大小决定使用%f 或 %e
>>> '%g' % (12.13)
'12.13'
>>> '%g' % (12131415.12)
'1.21314e+07'
>>> '%g' % (1212)
'1212'
%G:作用同上

3.格式化操作辅助命令
m.n                m是显示的最小宽度,n是小数点后的位数
>>> '%10.2f' % (1212)
'   1212.00'
>>> '%10.2e' % (1212)
'  1.21e+03'
-                        用于左对齐
>>> '%-10.2e' % (1212)
'1.21e+03  '

+                在正数前面显示加号(+)
>>> '%+10.2e' % (1212)
' +1.21e+03'
#                在八进制数前面显示(‘ 0o ’),在十六进制数前面显示’ 0x ’或’ 0X ’
>>> '%#o' % 10
'0o12'
>>> '%x' % 108
'6c'
>>> '%#X' % 109
'0X6D'
>>> '%#x' % 108
'0x6c'
0        显示的数字前面填充’ 0 ’取代空格
>>> '%010d'% 5
'0000000005'
4.Python 的转义字符及其含义
符号        说明
\'        单引号
\"        双引号
\a        发出系统响铃声
\b        退格符
\n        换行符
\t        横向制表符(TAB)
\v        纵向制表符
\r        回车符
\f        换页符
\o        八进制数代表的字符
\x        十六进制数代表的字符
\0        表示一个空字符
\\        反斜杠

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
iiiHyy + 5 + 5 + 3

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 04:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表