Python字符串格式化函数之format函数

自python2.6开始,新增了一种格式化字符串的函数str.format(),此函数可以快速处理各种字符串。通过{}和:来代替%。

请看下面的示例,基本上总结了format函数在python的中所有用法:

# 通过位置
'{0},{1}'.format('aa', 2.2)  # {}内的序号为format()参数对应的序号,
# a,20
'{},{}'.format('aa', 2.2, 'bb', 3.3)  # 缺省模式下默认从0开始,多余的参数不传进去
# a,20
'{1},{0},{1}'.format('a', 22)
# 22,a,22
# 通过关键字参数
'{name},{age}'.format(age=18, name='chuhao')

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __str__(self):
        return '她是个{self.name},今年{self.age}'.format(self=self)
print(Person('大佬',21))

# 通过映射 list
a_list = ['大佬', 21, '广东']
'我是{0[0]},来自{0[2]},年龄{0[1]}'.format(a_list)
# 我是大佬,来自中国,年龄21

# 通过映射 dict  要加两个星号
b_dict = {'名字': '大佬', '年龄': 21, '产地': '广东'}
'我是{名字},来自{产地},年龄{年龄}'.format(**b_dict)
# 我是大佬,来自中国,年龄21

# 填充与对齐
'{:>8}'.format('189')  # 冒号+空白填充+右对齐+固定宽度8
#     189
'{:0>8}'.format('189')
# 00000189
'{:a>8}'.format('189')
# aaaaa189

# 精度与类型f
'{:.2f}'.format(321.33345)  # 保留2位小数,
# 321.33

# 用来做金额的千位分隔符
'{:,} RMB'.format(1234567890)
# 1,234,567,890 RMB

# 其他类型 主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制
'{:b}'.format(18)  # 二进制 10010
'{:d}'.format(18)  # 十进制 18
'{:o}'.format(18)  # 八进制 22
'{:x}'.format(18)  # 十六进制12

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值