标题:
python-数据类型(2)
[打印本页]
作者:
look_w
时间:
2019-3-15 17:00
标题:
python-数据类型(2)
字符串的格式化
格式化
最后一个常见的问题是如何输出格式化的字符串。我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。
>>> 'Hi,%s,you have $%d.' % ('David',1000000)
# 'Hi,David,you have $1000000.'
你可能猜到了,%运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。
如果只有一个%?,括号可以省略。例如:
'hello,%s' % 'world'
# 'hello,world'
常见的占位符:
占位符 替换内容
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数
其中,格式化整数和浮点数还可以指定是否补0和整数与小数的位数
如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串.
有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%:
'growth is %.3f%%'%4.5780
# 'growth is 4.578%'
format()函数格式化字符串
另一种格式化字符串的方法是使用字符串的format()方法,它会用传入的参数依次替换字符串内的占位符{0}、{1}……,不过这种方式写起来比%要麻烦得多:
'hello,{0},你的年龄是{1},体重增长了{2:.2f}%'.format('David',23,23.4785)
# 'hello,David,你的年龄是23,体重增长了23.48%'
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0