如何在 python 中正确编写( 23,45,212 )逗号分隔的数字?不是千位分隔符
How to write correctly ordered ( 23,45,212 ) comma separated numbers in python ? not the thousand separator
number = int(input())
# input: 2345212
print(f"{number:,}") # using inbuilt python's separator
# output:
# Giving this : 2,345,212
# desired output: 23,45,212
我希望生成格式正确的数字作为输出。但是,我无法弄清楚。正如在最后一个所需的输出 ( 23,45,212 ) 中,它在 3 个位置之后有一个逗号,此后在传递 2 位数字时放置一个逗号。在印度,这是将逗号与数字放在一起的标准形式。
寻找最短的技巧。
[ 已经尝试过语言环境。我想打印没有货币(不是这个: 23,45,212.00 )]
你可以使用内置的 locale
库来做这样的事情:
import locale
number = int(input())
locale.setlocale(locale.LC_MONETARY, 'en_IN')
print(locale.currency(number, grouping=True))
或不带货币符号:
import locale
number = int(input())
locale.setlocale(locale.LC_MONETARY, 'en_IN')
print(locale.currency(number, grouping=True)[1:])
number = int(input())
# input: 2345212
print(f"{number:,}") # using inbuilt python's separator
# output:
# Giving this : 2,345,212
# desired output: 23,45,212
我希望生成格式正确的数字作为输出。但是,我无法弄清楚。正如在最后一个所需的输出 ( 23,45,212 ) 中,它在 3 个位置之后有一个逗号,此后在传递 2 位数字时放置一个逗号。在印度,这是将逗号与数字放在一起的标准形式。
寻找最短的技巧。
[ 已经尝试过语言环境。我想打印没有货币(不是这个: 23,45,212.00 )]
你可以使用内置的 locale
库来做这样的事情:
import locale
number = int(input())
locale.setlocale(locale.LC_MONETARY, 'en_IN')
print(locale.currency(number, grouping=True))
或不带货币符号:
import locale
number = int(input())
locale.setlocale(locale.LC_MONETARY, 'en_IN')
print(locale.currency(number, grouping=True)[1:])