如何使用逗号作为千位分隔符打印数字

新手上路,请多包涵

如何使用逗号作为千位分隔符打印整数?

 1234567   ⟶   1,234,567

在句点和逗号之间做出决定不需要特定于语言环境。

原文由 Elias Zamaria 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 389
2 个回答

语言环境未知

'{:,}'.format(value)  # For Python ≥2.7
f'{value:,}'          # For Python ≥3.6

语言环境感知

import locale
locale.setlocale(locale.LC_ALL, '')  # Use '' for auto, or force e.g. to 'en_US.UTF-8'

'{:n}'.format(value)  # For Python ≥2.7
f'{value:n}'          # For Python ≥3.6

参考

根据 格式规范迷你语言

',' 选项表示使用逗号作为千位分隔符。对于区域设置感知分隔符,请改用 'n' 整数表示类型。

原文由 Ian Schneider 发布,翻译遵循 CC BY-SA 4.0 许可协议

我很惊讶没有人提到您可以像这样简单地在 Python 3.6+ 中使用 f-strings 做到这一点:

 >>> num = 10000000
>>> print(f"{num:,}")
10,000,000

…冒号后的部分是格式说明符。逗号是您想要的分隔符,因此 f"{num:_}" 使用下划线而不是逗号。此方法只能使用“,”和“_”。

这相当于对旧版本的 python 3 使用 format(num, ",")

当您第一次看到它时,这可能看起来很神奇,但事实并非如此。它只是语言的一部分,并且通常需要足够的东西来提供快捷方式。要了解更多信息,请查看 组子组件

原文由 Emil Stenström 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题