格式化字符串一般有两种方法
1、%(d整数,s字符,f浮点数) 2、format 用处极为广泛且限制不多
注意:第一种对于数组的传递会报TypeError,所以必须传递数组
a = (1, 2, 3)
# b = 'I have %s' % (a)
b = 'I have %s' % (a,)
print(b)
format传递参数
1、位置
a = '{0}:{1}'.format('abc', 123)
print(a)
2、关键字
a = '{name},{age}'.format(name='Mike', age=28)
print(a)
3、对象属性
class Person:
def __init__(self, name, age):
self.name, self.age = name, age
def __str__(self):
return 'This guy is {self.name},is {self.age} old'.format(self=self)
a = str(Person('Lucy', 18))
print(a)
4、下标 针对列表、数组等有序集合
p = ['kzc', 18]
a = '{0[0]},{0[1]}'.format(p)
print(a)
format 限定格式
1、填充与对齐 下面 > 表右对齐 < 左对齐 ^ 居中对齐 符号前的字符表示填充的对象
a = '{:>8}'.format('189')
print(a)
b = '{:0>8}'.format('189')
print(b)
c = '{:a>8}'.format('189')
print(c)
2、精度与类型 常与f搭配使用
a = '{:.2f}'.format(33.333333)
print(a)
3、转换数字进制
a = 17
print('{:b}'.format(a), '二进制')
print('{:x}'.format(a), '十六进制')
print('{:d}'.format(a), '十进制')
print('{:o}'.format(a), '八进制')
4、千位分隔符
a = 1234567890
print('{:,}'.format(a))