python3.6后支持3种格式化输出方式,其中前两种为%-formatting及str.format ,第三种即为 f-string。
首先简单说下前两种:
1.%-formatting
据传该格式化方法源于C..
>>>username = input("请输入用户名:") >>>pwd = input("请输入密码:") >>>print("用户名为:%s,密码为:%s" %(username, pwd))
用户名为:张三,密码为:123456
%后字符含义:
- %s:str,字符类型
- %d(i):decimal,十进制数
- %x: hex, 十六进制数
- %f: float,浮点数
指定长度:
- %5d:右对齐,不足左边补空格
- %-5d:- 代表左对齐,不足右边默认补空格
- %05d:右对齐,不足左边补0
浮点数:
- %f: 默认是输出6位有效数据, 会进行四舍五入
- %.8f:指定小数点位数的输出,保留小数点后8位
- %4.8f:4代表整个浮点数的长度,包括小数,只有当字符串的长度大于4位才起作用
2.str.format
2. format
特性:字符串的format方法
顺序填坑:{}
print('姓名是:{},年龄是:{}'.format('Tom',20))
输出:
姓名是:Tom,年龄是:20
下标填坑:
print('姓名是:{0},年龄是:{1}'.format('Tom',20))
输出:
姓名是:Tom,年龄是:20
变量填坑:'名字是:{name},年龄是:{age}'.format(name ='tom',age = 16)
print('姓名是:{name},年龄是:{age}'.format(name='Tom',age=20))
输出:
姓名是:Tom,年龄是:20
{:5} 指定输出长度=5
字符串 {:5}--左对齐
数值 {:5}--右对齐
使用 > < 可以避免字符串/数值对齐方法不一致
> 右对齐
< 左对齐
print('姓名是:{0:*<11}\n年龄是:{1:*>11}'.format('Tom',20))
输出:
姓名是:Tom********
年龄是:*********20
中间对齐 ^ 不足的长度用*表示
print('姓名是:{0:*^11}\n年龄是:{1:*^11}'.format('Tom',20))
输出:
姓名是:****Tom****
年龄是:****20*****
3. 格式化 f''
python3.6 后的版本支持
f'名字是:{name},年龄是:{age}'
name = 'Tom'
age = 20
print(f'姓名是:{name},年龄是:{age}')
---------------------
作者:雪国的花儿
来源:CSDN
原文:https://blog.csdn.net/u012941152/article/details/81778006
版权声明:本文为博主原创文章,转载请附上博文链接!