Python format和%-格式化输出

Python格式化输出(format和%)

平时在打印结果的时候,直接就使用print,但多次使用print会导致界面看起来很乱。python提供两种格式化输出的方法——format%,本文会介绍两者的使用,但首推format

1. format 格式化输出

1.1 通过关键字格式化

print('{name} is {age} years old!'.format(name='xiaoming',age=10))
# 输出: xiaoming is 10 years old!

1.2 通过位置格式化

print('{0} is {1} years old'.format('xiaohua','21'))
# 输出: xiaohua is 21 years old

1.3 填充和对齐:^<>分别表示居中、左对齐、右对,后面带宽度

print("{0:10}".format("0123456789"))
print('{0:^10}'.format('123'))
print('{0:>10}'.format('123'))
print('{0:<10}'.format('123'))

输出:

0123456789
   123    
       123
123       

1.4 和精度一起使用

print('{:.1f}'.format(4.234324525254))
print('{:.4f}'.format(4.1))
# 输出
4.2
4.1000

1.5 进制转化

b o d x 分别表示二、八、十、十六进制

# 不带前缀
print('不带前缀')
print('{:b}'.format(256))
print('{:o}'.format(256))
print('{:d}'.format(256))
print('{:x}'.format(256))
# 带前缀
print('带前缀')
print('{:#b}'.format(256))
print('{:#o}'.format(256))
print('{:#d}'.format(256))
print('{:#x}'.format(256))

输出:

不带前缀------------------------- 
100000000
400
256
100
带前缀------------------------- 
0b100000000
0o400
256
0x100

也可以使用:

>>> format(256,'#o')
0o400
>>> format(256,'o')
400

1.6 千位分隔符

这种情况只针对与数字

print('{:,}'.format(100000000))
print('{:,}'.format(235445.234235))
# 输出
100,000,000
235,445.234235

1.7 打印输出大括号{}

# 保留{}
print("{{十步杀一人}},千里不留行.事了拂衣去,{{{0}}}.".format("深藏身与名"))
# 输出
{十步杀一人},千里不留行.事了拂衣去,{深藏身与名}.

2. % 格式化输出

2.1 整数输出

%o —— oct 八进制
%d —— dec 十进制
%x —— hex 十六进制

>>> print('%o' % 20)
24
>>> print('%d' % 20)
20
>>> print('%x' % 20)
14
  • 加 “#” 保留前缀:
>>> print('%#o' % 20)
0o24
>>> print('%#d' % 20)
20
>>> print('%#x' % 20)
0x14

2.2 浮点数输出

  • %f ——保留小数点后面六位有效数字
    • %.3f ——保留小数点后面三位有效数字
  • %e ——保留小数点后面六位有效数字,科学计数法输出
    • %.3e ——保留3位小数位,科学计数法输出
  • %g ——在保证六位有效数字的前提下,使用小数方式,否则使用科学计数法
    • %.3g保留3位有效数字,使用小数或科学计数法

■ \blacksquare

  • 38
    点赞
  • 256
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值