我有一个函数,我正在使用它将一些数字转换为需要迭代几个数组的不同形式。我使用了两个嵌套for循环,但结果不是我所期望的。我希望函数总共返回5个变量,但它会返回每个数组中相互相乘的变量数。所以在下面的例子中,它返回一个由25个变量组成的数组。通过多个阵列迭代
co_60_activities = [2 , 2 , 3 , 3 , 3]
co_60_masses = [2 , 2 , 3 , 3 , 3]
def activity(activities, masses, array):
for x in range(len(activities)):
for y in range(len(masses)):
array.append(activities[x] * masses[y] * 37000.0)
a_counts = []
activity(co_60_activities, co_60_masses, a_counts)
我发现在类似的帖子中,迭代通过多个列表的传统方式是使用zip函数。所以我改变了我的函数如下:
def activity(activities, masses, array):
for x , y in zip(activities , masses):
array.append(activities[x] * masses[y] * 37000.0)
这就产生了“类型错误:列表索引必须是整数,而不是浮动” 我想我需要的数据类型转换莫名其妙,但我不知道如何。
请发布给定输入示例的预期输出。 – wwii 2014-11-25 04:35:18