Python 标准化输出

2019-04-29  本文已影响0人  Vector_Wan

一、 str.format()

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。相对于老版的%格式方法,它有很多优点。
1.在%方法中%s只能替代字符串类型,而在format中不需要理会数据类型;
2.单个参数可以多次输出,参数顺序可以不相同;
3.填充方式十分灵活,对齐方式十分强大;
4.官方推荐用的方式,%方式将会在后面的版本被淘汰。

使用

1、按照默认顺序,不指定位置

print("{} {}".format("hello","world") )
>> hello world

2、设置指定位置,可以多次使用

print("{0} {1} {0}".format("hello","or"))
>> hello or hello

3、使用字典格式化

person = {"name":"opcai","age":20}
print("My name is {name} . I am {age} years old .".format(**person))
>> My name is opcai . I am 20 years old .

4、通过列表格式化

stu = ["opcai","linux","MySQL","Python"]
print("My name is {0[0]} , I love {0[1]} !".format(stu))
>> My name is opcai , I love linux !

格式限定符

填充与对齐 ^ < > 分别代表居中,左对齐,右对齐,后面数字表示宽度,':' 后面带填充的字符,只能是一个字符,不指定的话默认空格.

有时间写一下这个例子


丑陋的cxm

精度与类型

暂时先放两个回头再补


image.png
print("{:.2f}".format(3.1415926))   #3.14
#.2表示长度为2的精度(指小数点后),f表示float类型
#表示进制,b,d,o,x分别表示二进制,十进制,八进制,十六进制
print("{:b},{:d},{:o},{:x}".format(63,63,63,63))  #111111,63,77,3f

用“,”还能做金额的千位分隔符。

print("{:,}".format(1234567890))    #1,234,567,890
上一篇下一篇

猜你喜欢

热点阅读