Python for循环生成的列表的总和,其中包含百分号?

Python for循环生成的列表的总和,其中包含百分号?,python,list,sum,Python,List,Sum,我有一个在for循环中更改的列表。这是其中一个列表的示例: lst = ['1.50%', '2.67%'] 我希望能够得到这个列表和长度的总和,这样我就可以找到平均值。我执行了以下操作: sum(lst)/len(lst) 打印时,我收到一个错误 我想知道是否可以从列表中的每个输入中提取百分比,将其转换为整数,然后再次执行前面的函数以查看它是否有效 我该怎么做呢?此外,如果有更简单的方法,我应该如何继续执行此步骤?您需要去掉百分号并将余数转换为浮点,因为您无法对字符串进行有意义的求和: s

我有一个在for循环中更改的列表。这是其中一个列表的示例:

lst = ['1.50%', '2.67%']
我希望能够得到这个列表和长度的总和,这样我就可以找到平均值。我执行了以下操作:

sum(lst)/len(lst)
打印时,我收到一个错误

我想知道是否可以从列表中的每个输入中提取百分比,将其转换为整数,然后再次执行前面的函数以查看它是否有效


我该怎么做呢?此外,如果有更简单的方法,我应该如何继续执行此步骤?

您需要去掉百分号并将余数转换为浮点,因为您无法对字符串进行有意义的求和:

sum(float(v.rstrip('%')) for v in lst) / len(lst)
演示:


您需要去掉百分号并将余数转换为浮点数,因为您无法对字符串进行有意义的求和:

sum(float(v.rstrip('%')) for v in lst) / len(lst)
演示:

请尝试以下代码:

lst = ['1.50%', '2.67%']
lst2=[]
for i in lst:
     lst2.append(float(i[0:-1]))
print(sum(lst2)/len(lst2))
请尝试以下代码:

lst = ['1.50%', '2.67%']
lst2=[]
for i in lst:
     lst2.append(float(i[0:-1]))
print(sum(lst2)/len(lst2))