在python中,是否有一种简单的方法可以将逗号转换为整数,然后用逗号返回数字?

时间:2012-07-31 07:18:08

标签: python string math

假设我有一个这样的数字:

8,741 8,741,291

如何使用python将该数字乘以2,然后将逗号重新加入其中? 我希望python函数返回

17,482和17,482,582 ,采用字符串格式。

2 个答案:

答案 0 :(得分:11)

my_str = '1,255,000'

my_num = int(my_str.replace(',','')) #replace commas with nothing

这将返回my_num = 1255000

result = my_num * 2

import locale
locale.setlocale(locale.LC_ALL, 'en_US')
my_str = locale.format("%d", result, grouping=True)

这将返回 - > my_str ='2,510,000'

答案 1 :(得分:6)

第一部分很简单:

temp = "8,741,291".replace(',', '')
n = int(temp) * 2

我认为让漫画回来有点困难,但实际上并非如此!

如果您使用的是最新版本的Python,则可以使用新的.format()字符串方法,如下所示:

s = "{0:,}".format(n)

如果您使用的Python比2.6更新,则可以在此示例中省略大括号中的0。 (唉,我必须使用Cygwin,唉,它只提供2.6,所以我习惯输入0。)

.format()方法的规范迷你语言在这里:

http://docs.python.org/library/string.html#formatstrings

@ user1474424解释了locale.format()函数,这很酷;我不知道那一个。我检查过文档;这是自Python 1.5以来的一直存在!

http://docs.python.org/library/locale.html