字符串中所有数字的总和

时间:2013-10-27 13:21:33

标签: python

s='1.25,3.455,3.7'

我需要在python中创建一个程序,它将为我提供字符串1.253.4553.7的总和。但我似乎无法这样做。当我尝试任何pyton求和1,2,5,3等等。

你能帮助我帮助我吗?

编辑:

感谢“s.split”的帮助,她能够解决这个问题。很抱歉一开始就缺乏信息。

S = '1.25,3.455,3.7'

A = 0

for s in s.split(','):

A = A +浮动(I)

打印

2 个答案:

答案 0 :(得分:6)

s='1.25,3.455,3.7'
print sum(float(num) for num in s.split(","))

您可以根据,拆分字符串,然后将每个部分转换为float,然后对它们应用sum函数。

事后分析

基于逗号分割

print s.split(",")

<强>输出

['1.25', '3.455', '3.7']

循环转换为浮动的值

for num in s.split(","):
    print float(num)

<强>输出

1.25
3.455
3.7

sum会添加所有给出的数字。因此,我们只需将所有已转换的数字提供给它,例如sum(float(num) for num in s.split(","))

答案 1 :(得分:1)

您可以使用ast.literal_eval,它会将逗号分隔的字符串转换为浮点元组,然后sum可以返回元组的总和。

>>> from ast import literal_eval
>>> sum(literal_eval('1.25,3.455,3.7'))
8.405000000000001