Study 2 —— 格式化
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Study 2 —— 格式化相关的知识,希望对你有一定的参考价值。
我们经常会输出类似‘亲爱的xxx你好!你xx月的话费是xx,余额是xx‘
之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。
>>> ‘Hello, %s‘ % ‘World‘ ‘Hello, World‘ >>> ‘Hi, %s,you have $%d.‘ % (‘Lilei‘,1000000) ‘Hi, Lilei,you have $1000000.‘
%运算符就是用来格式化字符串的。常见的占位符有:
%d 整数
%s 字符串
%f 浮点数
%x 十六进制整数
其中,格式化整数和浮点数还可以指定是否补0和整数与小数的位数:
>>> ‘%2d-%02d‘ % (3, 1) ‘ 3-01‘ >>> ‘%.2f‘ % 3.1415926 ‘3.14‘
如果不太确定应该用什么,%s
永远起作用,它会把任何数据类型转换为字符串:
>>> ‘Age: %s. Gender: %s‘ % (25, True) ‘Age: 25. Gender: True‘
对于Unicode字符串,用法完全一样,但最好确保替换的字符串也是Unicode字符串:
>>> u‘Hi, %s‘ % u‘Michael‘ u‘Hi, Michael‘
有些时候,字符串里面的%
是一个普通字符怎么办?这个时候就需要转义,用%%
来表示一个%
:
>>> ‘growth rate: %d %%‘ % 7 ‘growth rate: 7 %‘
Python当然也支持其他编码方式,比如把Unicode编码成GB2312:
>>> u‘中文‘.encode(‘gb2312‘) ‘\xd6\xd0\xce\xc4‘
在Python 3.x版本中,把‘xxx‘
和u‘xxx‘
统一成Unicode编码,即写不写前缀u
都是一样的,而以字节形式表示的字符串则必须加上b
前缀:b‘xxx‘
。
格式化字符串的时候,可以用Python的交互式命令行测试,方便快捷。
以上是关于Study 2 —— 格式化的主要内容,如果未能解决你的问题,请参考以下文章