如何将格式字符串中的千位分隔符更改为撇号

2024-04-20 00:13:00 发布

您现在位置:Python中文网/ 问答频道 /正文

下面打印一个以逗号作为千位分隔符的十进制数:

num = 123456789
print(f"{num:,}")

123,456,789

根据PEP-378(这里似乎相关?),分隔符可以是逗号、点、空格、撇号或下划线。我设法得到了一个下划线:

print(f"{num:_}")

123_456_789

但是我怎么才能得到一个点,一个空格,或者对我来说最重要的,一个撇号呢


Tags: numpep空格print逗号分隔符设法
2条回答

实现这一点的简单方法是将字符串存储在变量中,如string 假设你想要撇号而不是下划线

print(string.replace('_',"'"))

“正确”的方法是使用locale模块:

>>> import locale
>>> locale.setlocale(locale.LC_NUMERIC, 'de_CH.utf8')
>>> locale.format_string('%d', 123457890, grouping=True)
"123'457'890"

在这种情况下,这需要在您的系统上安装瑞士-德国语言环境,但它与所有已安装的语言环境兼容,因此您可以轻松生成几乎所有在某处使用的格式

相关问题 更多 >