关于字符串的格式化----format与%

格式化字符串一般有两种方法

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))

猜你喜欢

转载自www.cnblogs.com/Zhao01/p/11840859.html