格式化字符串

三种语法

%,format,f-string

print("格式 %s" %'hello')

##
%[-][+][0][m][.n]格式化字符 参数

m:占位符

-:左对齐

+:右对齐,其中-+都需要配合m使用

.n:在字符串中代表截取字符串的前n位

0:在数字的输出中,可以把左边都补0

格式化字符
%s占位符
%d10进制
%o8进制
%x16进制
%f浮点数(默认6位小数)
%b2进制,format中独有

Format

template = '格式化的内容是{}'
print(template.format('hello'))

 其中逗号代表千分位符,把12345表示为12,345

#index的使用,format的数量可以不等于前方{}的数量
print("{0}{1}{0}".format(1,2))
>>> 1,2,1

使用举例,占位,截取,右对其,居中对其,任意字符填补

# 的使用举例,主要的作用在不同进制之前加上标识符

print("|{0:d}|{0:x}|{0:o}|{0:b}|".format(13)}
print("|{0:d}|{0:#x}|{0:#o}|{0:#b}|".format(13)}

>>>|13|d|15|1101|
>>>|13|0xd|0o15|0b1101|

sign的使用举例,主要用于在输出中更明显的区分正负数

print("|{0:d}|{0:d}|".format(13,-13)}
print("|{0:+d}|{0:+d}|".format(13,-13)}
print("|{0:-d}|{0:-d}|".format(13,-13)}
print("|{0: d}|{0: d}|".format(13,-13)}

>>>|13|-13|
>>>|+13|-13|
>>>|13|-13|
>>>| 13|-13|

 有关format的参数传递

#按*args传入固定参数
print("{} {} {}".format(1,2,3))
#按**kwargs传入可变参数
print("{name} {age} {sex}".format(name='alex',age=18,sex='man'))

>>>123
>>>alex 18 man

当然你可以按元组或字典方式传入

par = (1,2,3)
print("{0[0]} {0[1]} {0[2]}".format(par))

par = {'x':1,'y':2,'z':3}
print("{0[x]} {0[y]} {0[z]}".format(par))
>>>123
>>>123

显示千分位

print('{:,.2f}'.format(123456,5678))
>>>123,456.57

F-string

是format的变形用法

python 3.6版本的新功能

也支持类方法的调用,是fstring的最强大功能

name = 'tom'
age = 18
salary = 1223.21
print(f'{name:.2s},{age:010d},{salary:,.2f}')
print(f'{name:capitalize()},{age:010d},{salary:,.2f}')
>>>to,0000000018, 1,223.21
>>>Tom,0000000018, 1,223.21

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值