Python在用户自定义列表中使用sum()
所以,这个项目中我无法完成的部分是求和函数。 它在以下时间工作:Python在用户自定义列表中使用sum(),python,list,sum,average,user-input,Python,List,Sum,Average,User Input,所以,这个项目中我无法完成的部分是求和函数。 它在以下时间工作: a = [1, 2, 3, 4, 5] b = sum(a) print b 但在我的程序中,我有一个用户创建的列表,并且总和不断得到一个错误。len可行,但我也需要这个总数来获得平均值 namelist = [] agelist = [] while True: name = raw_input("Enter a name or
a = [1, 2, 3, 4, 5]
b = sum(a)
print b
但在我的程序中,我有一个用户创建的列表,并且总和不断得到一个错误。len可行,但我也需要这个总数来获得平均值
namelist = []
agelist = []
while True:
name = raw_input("Enter a name or type Exit to end data entry: ")
namelist.append(name)
if name == "Exit": #creates an exit point from data entry
break
age = raw_input("How old is " + name + "? ")
agelist.append(age)
lenage = len(agelist)
sumage = sum(agelist) #here is the problem -<<
avgage = sumage / lenage
print avgage
我怎样才能让sumage工作?
它不工作是因为我没有定义列表的长度吗?变量age的类型为string,因此需要将其转换为整数:
agelist.append(int(age))
错误的原因是agelist是用户输入的字符串列表,在添加这些输入之前,您需要将它们转换为整数或浮点数,具体取决于您想要的平均值:Python 2中的整数或浮点数:
sumage = sum(map(int, agelist)) # OR, replace int with float
您应该将年龄从str转换为intcast再转换为int!哇!谢谢成功了!