Python中格式化format()方法详解
Python中格式化format()方法详解
Python中格式化输出字符串使用format()函数,字符串即类,可以使用方法;
Python是完全面向对象的语言,任何东西都是对象;
字符串的参数使用{NUM}进行表示,0,表示第一个参数,1,表示第二个参数,以后顺次递加;
使用":",指定代表元素需要的操作,如":.3"小数点三位,":8"占8个字符空间等;
还可以添加特定的字母,如:
- 'b'-二进制.将数字以2为基数进行输出.
- 'c'-字符.在打印之前将整数转换成对应的Unicode字符串.
- 'd'-十进制整数.将数字以10为基数进行输出.
- 'o'-八进制.将数字以8为基数进行输出.
- 'x'-十六进制.将数字以16为基数进行输出,9以上的位数用小写字母.
- 'e'-幂符号.用科学计数法打印数字,用'e'表示幂.
- 'g'-一般格式.将数值以fixed-point格式输出.当数值特别大的时候,用幂形式打印.
- 'n'-数字.当值为整数时和'd'相同,值为浮点数时和'g'相同.不同的是它会根据区域设置插入数字分隔符.
- '%'-百分数.将数值乘以100然后以fixed-point('f')格式打印,值后面会有一个百分号.
数字(0,1,...)即代表format()里面的元素,所以可以使用"."调用元素的方法;
参见网址:http://www.python.org/dev/peps/pep-3101/
代码如下:
#-*-coding:utf-8-*- #==================== #File:abop.py #Author:Wendy #Date:2013-12-03 #==================== #eclipsepydev,python3.3 age=25 name='Caroline' print('{0}is{1}yearsold.'.format(name,age))#输出参数 print('{0}isagirl.'.format(name)) print('{0:.3}isadecimal.'.format(1/3))#小数点后三位 print('{0:_^11}isa11length.'.format(name))#使用_补齐空位 print('{first}isas{second}.'.format(first=name,second='Wendy'))#别名替换 print('Mynameis{0.name}'.format(open('out.txt','w')))#调用方法 print('Mynameis{0:8}.'.format('Fred'))#指定宽度
输出:
Carolineis25yearsold. Carolineisagirl. 0.333isadecimal. _Caroline__isa11length. CarolineisasWendy. Mynameisout.txt MynameisFred.
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!