【问题标题】:Formatting numbers with localized thousands separators and decimal precision in python在python中使用本地化的千位分隔符和小数精度格式化数字
【发布时间】:2023-04-06 19:24:01
【问题描述】:

可以用 :

格式化具有小数精度的数字

print("{:.2f}".format(7654321.234567))

可以使用本地化的千位分隔符来格式化数字:

import locale
locale.setlocale(locale.LC_ALL, '')
print("{:n}".format(7654321.234567))

但是我怎样才能同时做到这两个呢?

我想在千位分隔符是空格的国家/地区打印7 654 321.23,在千位分隔符是逗号的国家/地区打印7,654,321.23?但我无法提前知道本地化分隔符是什么。

【问题讨论】:

  • 更新是否满足您的要求?
  • 差不多。一个完美的解决方案可以在 Jinja 环境中使用(即没有像 my_sep 这样的中间变量)。但我不确定是否可以只玩format。如果没有其他答案,我会在几天后接受您的答案!
  • 啊,还有神社。那么为什么不将my_sep 保留为上下文变量呢?

标签:
python
string-formatting