码迷,mamicode.com
首页 > 其他好文 > 详细

格式化字符串format函数

时间:2015-04-12 17:31:11      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:

语法

它通过{}和:来代替%。

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/

 

代码如下:

 1 # -*- coding: utf-8 -*-
 2 
 3 age = 25
 4 name = Caroline
 5 
 6 print({0} is {1} years old. .format(name, age)) #输出参数
 7 print({0} is a girl. .format(name))
 8 print({0:.3} is a decimal. .format(1/3)) #小数点后三位
 9 print({0:_^11} is a 11 length. .format(name)) #使用_补齐空位
10 print({first} is as {second}. .format(first=name, second=Wendy)) #别名替换
11 print(My name is {0.name}.format(open(out.txt, w))) #调用方法
12 print(My name is {0:8}..format(Fred)) #指定宽度

输出:

1 Caroline is 25 years old. 
2 Caroline is a girl. 
3 0.333 is a decimal. 
4 _Caroline__ is a 11 length. 
5 Caroline is as Wendy. 
6 My name is out.txt
7 My name is Fred    .

 

 

格式化字符串format函数

标签:

原文地址:http://www.cnblogs.com/zoe15/p/4419796.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!