还在用%吗?快学会使用format吧!!!好处大大的有:
1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型2.单个参数可以多次输出,参数顺序可以不相同
3.填充方式十分灵活,对齐方式十分强大
4.官方推荐用的方式,%方式将会在后面的版本被淘汰
再说一句,我以前也一直使用%,这是在学习C语言的时候留下的“坏习惯”,当时就觉的很
不方便。当然知识是需要活学活用的,%也有它的一点点好处,看情况使用,但是一般情况下
在python3中使用format是没有错的,它也是2和3很大的一个区别,好啦看看基本的format使用,学会了一般情况都能应付了
通过关键字输出:
print('{学习}使我{快乐}'.format(学习='学习',快乐='痛苦'))
study = {'语言':'python','排名':'天下第一'}
print('{语言} 是 {排名}'.format(**study)) #这里的**和*如何使用在前面的一篇文章中有专门的介绍
#学习使我痛苦
#python 是 天下第一
通过位置输出:
print('{0} @ {1}'.format('DH','nihaoa'))
print('{1} @ {0}'.format('DH','nihaoa'))
print('{} @ {}'.format('DH','nihao')) #如果你是按顺序排列,则可以不用填写序号
#DH @ nihaoa
#nihaoa @ DH
#DH @ nihao
使用特殊字符 ^<>来填充和对齐,分别表示居中、左对齐、右对齐,后面的数字表示填充:
print('你好 {:^10}'.format('python'))
print('你好 {:<10}'.format('python'))
print('你好 {:>10}'.format('python'))
print('你好 {:@<10}'.format('python'))
print('你好 {:@>10}'.format('python'))
#你好 python
#你好 python
#你好 python
#你好 python@@@@
#你好 @@@@python
精度和类型f:
print('{:.1f}'.format(3.1415926))
print('{:.5f}'.format(3.1415926))
#3.1
#3.14159
进制的转化,b o d x 分别表示二、八、十、十六进制:
print('{:b}'.format(100))
print('{:o}'.format(100))
print('{:d}'.format(100))
print('{:x}'.format(100))
#1100100
#144
#100
#64
针对与数字可以使用:千分位分隔符:
print('{:,}'.format(123456712))
print('{:,}'.format(1234567123456))
#123,456,712
#1,234,567,123,456
OK!基本的语法就这么多,当然我也是在看过了许多博客后,总结了一下,我觉得这些已经够简单的使用了
若学不能以致用,学以何用