如何简单地给一个整数添加逗号?
如何简单地给一个整数添加逗号?
这个问题已经有了答案:
可能是重复的:
如何在Python中用逗号作为千位分隔符打印数字?
例如:
>> print numberFormat(1234) >> 1,234
或者Python中有没有内置函数可以做到这一点?
admin 更改状态以发布 2023年5月21日
到目前为止,还没有人提到在版本2.7中添加的新选项“`,`” ,它可以在格式说明迷你语言中使用——请参见PEP 378:千位分隔符格式说明符 在Python 2.7文档的新功能中。因为你不必搞乱语言环境(但由于这个功能对国际化的限制,参见原始PEP 378),所以很容易使用。它适用于浮点数、整数和十进制数——以及在迷你语言规范中提供的所有其他格式化特性。\n\n用法示例:\n\n
print format(1234, ",d") # -> 1,234 print "{:,d}".format(1234) # -> 1,234 print(f'{1234:,d}') # -> 1,234 (Python 3.6+)
\n\n注意:虽然此新功能确实很方便,但实际上使用locale
模块并不比使用此功能更困难,正如其他许多人建议的那样。它的优点是,当输出数字、日期和时间等内容时,可以使数字输出自动遵循各个国家使用的适当千位(和其他)分隔符约定。还可以很容易地启用计算机的默认设置,无需学习大量的语言和国家代码。你只需要做以下事情:\n\n
import locale locale.setlocale(locale.LC_ALL, '') # empty string for platform's default settings
\n\n这样做后,你只需使用通用的\'n\'
类型代码即可输出数字(整数和浮点数)。在我所在的地方,逗号被用作千位分隔符,所以在上述设置语言环境后,会出现以下情况:\n\n
print format(1234, "n") # -> 1,234 print "{:n}".format(1234) # -> 1,234
\n\n世界其他地区大部分都使用句号而不是逗号来分隔千位数,因此在许多位置设置默认语言环境(或在setlocale()
调用中显式指定这样一个区域的代码)会产生以下结果:\n\n
print format(1234, "n") # -> 1.234 print "{:n}".format(1234) # -> 1.234
\n\n基于格式类型说明符\'d\'
或\',d\'
的输出不受使用(或不使用)setlocale()
的影响。但是,如果你使用locale.format()
或locale.format_string()
函数,则\'d\'
说明符受到影响。