【发布时间】:2019-03-21 20:36:16
【问题描述】:
为了将一些数字打印成二进制格式,我们只需使用.format() 方法,如下所示:
# Binary
for i in range(5+1):
print("{0:>2} in binary is {0:>08b}".format(i))
0 in binary is 00000000
1 in binary is 00000001
2 in binary is 00000010
3 in binary is 00000011
4 in binary is 00000100
5 in binary is 00000101
类似的用于以其他格式(十六进制和八进制)打印,只需将后面的大括号替换为我们要打印的数字。但是有没有办法使用新的f"" 字符串来替换.format() 命令?我知道这可能看起来微不足道,但我在玩新功能时遇到了这个问题,此外f"" 使代码更短且更具可读性。
for i in range(5+1):
print(f'{0:>2} in binary is {0:>08b}')
# This prints out just 0s
【问题讨论】:
-
你不应该在这里把
0改成i吗?
标签: python python-3.x binary f-string