当前位置:  首页>> 技术小册>> Python合辑5-格式化字符串

f-string 还能在不同进制下显示数字。例如,不需要通过b来对一个int进行格式转化就可以显示其二进制结果。

  1. >>> f'{7:b}'
  2. '111'

总结一下就是可以用f-string来格式化:
• int 到二进制
• int 到十六进制
• int 到八进制
• int 到十六进制(所有符号大写)
下面的例子使用缩进功能和进制格式化创建了一个表,可以显示数字在不同进制下的值。

  1. >>> bases = {
  2. "b": "bin",
  3. "o": "oct",
  4. "x": "hex",
  5. "X": "HEX",
  6. "d": "decimal"
  7. }
  8. >>> for n in range(1, 21):
  9. ...: for base, desc in bases.items():
  10. ...: print(f"{n:5{base}}", end=' ')
  11. ...: print()
  12. 1 1 1 1 1
  13. 10 2 2 2 2
  14. 11 3 3 3 3
  15. 100 4 4 4 4
  16. 101 5 5 5 5
  17. 110 6 6 6 6
  18. 111 7 7 7 7
  19. 1000 10 8 8 8
  20. 1001 11 9 9 9
  21. 1010 12 a A 10
  22. 1011 13 b B 11
  23. 1100 14 c C 12
  24. 1101 15 d D 13
  25. 1110 16 e E 14
  26. 1111 17 f F 15
  27. 10000 20 10 10 16
  28. 10001 21 11 11 17
  29. 10010 22 12 12 18
  30. 10011 23 13 13 19
  31. 10100 24 14 14 20

该分类下的相关小册推荐: