我有一個函數,我正在使用它將一些數字轉換爲需要迭代幾個數組的不同形式。我使用了兩個嵌套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