2017-10-15 92 views
-1

我需要在2個變量中生成10個隨機數並計算它們之間的比率。 我的代碼如下。我究竟做錯了什麼?不支持的操作數類型爲/:'list'和'list'Python

from random import randint 
N=10 
a = [random.randint(0, 10) for _ in range(N)] 
b = [random.randint(0, 10) for _ in range(N)] 
print (a,b) 
ratio = a/b 

TypeError: unsupported operand type(s) for /: 'list' and 'list' 
+1

診斷似乎很清楚。 '/'運算符不接受類型列表的操作數。你想計算list * elements *對的商數,而不是列表本身的商數。 –

回答

0

列表默認情況下不支持算術運算符,因爲元素可能不支持算術事情(他們甚至可能不是數字,他們可能是混合型的!)。

你會想去做

from random import randint 

N = 10 
a = [random.randint(0, 10) for _ in range(N)] 
b = [random.randint(0, 10) for _ in range(N)] 
ratio = [ai/bi for ai, bi in zip(a, b)] 

print(a, b) 
print(ratio) 

東西更方便的方式做這些類型的計算,看看NumPy

+0

謝謝我是全新的,我也會研究NumPy。 –

相關問題