我一直在努力计算两个不同列表中值的平均值。以下是我一直在做的(作为python的新手):
Averagelist = []
Listofvalues1 = ['1', '2', '3', '4']
Listofvalues2 = ['5', '6', '7', '8']
for i, x in enumerate(Listofvalues1):
for j, y in enumerate(Listofvalues2):
if j == i:
AVGvalue = (int(x)+int(y)/2)
Averagelist.append(AVGvalue)
我自己想出来的。它可能没用,但到目前为止,我可以打印两个用于计算的值,但我得到一个错误“ValueError:invalid literal for int(),以10为基数:'somevalue'”。可能是''
符号吗?你知道吗
干杯!你知道吗
你是说(int(x)+int(y))/2而不是(int(x)+int(y)/2?你知道吗
是否需要将数据存储为字符串?你必须一次将它们转换成数字(浮点数)。这可以在没有for循环的情况下完成,使用列表理解:
要计算实际平均值而不进行四舍五入,请使用float。另外,您还需要一对额外的括号,否则它将是y/2而不是(x+y/2)。你知道吗
至于那个错误,我不确定您在Listofvalues列表中使用了什么作为输入,下面的代码对我来说很好。你知道吗
相关问题 更多 >
编程相关推荐