python千位分隔符_Python格式字符串带空格的千位分隔符

@ user136036的答案是相当不错的,但是不幸的是,它没有考虑到Python错误的真实性。 完整答案可能如下:

变体A

如果您的平台的语言环境运行正常,则只需使用语言环境即可:

import locale

locale.setlocale(locale.LC_ALL, '')

print("{:,d}".format(7123001))

结果取决于您的语言环境和Python实现方式。

但是如果根据区域设置的Python格式被破坏,例如 Linux上的Python 3.5?

变体B

如果Python不遵守print("{:,.2f}".format(7123001.345).replace(",", " ")参数,则可以使用区域设置和解决方法(使用货币格式):

locale.setlocale(locale.LC_ALL, '')

locale._override_localeconv = {'mon_thousands_sep': '.'}

print(locale.format('%.2f', 12345.678, grouping=True, monetary=True))

以上在我的平台上给出了12.345,68。 将money设置为False或忽略它-Python不会分组成千上万。指定print("{:,.2f}".format(7123001.345).replace(",", " ")不执行任何操作。

变体C

如果您没有时间检查平台上的Python是否正常运行以及哪些功能坏了,则可以使用常规的字符串替换功能(如果您想将逗号和点换成点和逗号):

print("{:,.2f}".format(7123001.345).replace(",", " ")

用逗号代替空格很简单(点被假定为小数点分隔符):

print("{:,.2f}".format(7123001.345).replace(",", " ")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值