Python学习系列之format用法
format是代替%s格式的方法
不需要理会数据类型的问题,在%s方法中的%s只能代替字符串类型
填充方式十分灵活,对其方式十分强大
format填充字符串
通过位置来填充字符串
#format会把参数按位置顺序来填充到字符串中,第一个参数是0,第二个参数是1...... >>> a = 'hello {0},i am {1}'.format('zhangsan','lisi') >>> print(a) #也可以不输入数组,这样也会按顺序来填充 hello zhangsan,i am lisi >>> a = 'hello {}, i am {}'.format('zhangsan','list') >>> print(a) hello zhangsan, i am list #同一个参数可以填充多次,这个是format比%s先进的地方 >>> a = 'hello {0} i am {1},my name is {1}'.format('kayen','tom') >>> print(a) hello kayen i am tom,my name is tom
通过key来填充
>>> a = 'hello {name1} i am {name2}'.format(name1='zhangsan',name2='lisi') >>> print(a) hello zhangsan i am lisi
通过list的下标来填充
>>> names = ['zhangsan','lisi'] >>> a = 'hello {names[0]} i am {names[1]}'.format(names=names) >>> print(a) hello zhangsan i am lisi
通过字典的key来填充
>>> names = {'name1':'zhangsan','name2':'lisi'} >>> a = 'hello {names[name1]}, i am {names[name2]}'.format(names=names) >>> print(a) hello zhangsan, i am lisi
format填充与对齐
^是居中
<是左对齐(填充右边)
>是右对齐(填充左边)
:号后面带填充的字符,只能指定一个字符,不指定的话默认是用空格填充
1.填充字符串左边
>>> print('{:>8}'.format('zhang')) zhang #可以看到左边空出来了一个空格,冒号前边不加字符 默认就是空格填充
2.用'0'填充字符左边
>>> print('{:0>8}'.format('zhang')) 000zhang #可以看到左边被0填充了
3.左右用'1'填充
>>> print('{:1^10}'.format('zhang')) 111zhang111