2017-08-16 48 views
0

我初來乍到的編碼和使用Python 3.6是新的列表。我正在爲工程應用程序編寫一些代碼,這涉及到將數據存儲在基於輸入的列表中。我現在有兩個列表,我想創建基於輸入一個新的,前兩個列表的內容。我已示出一個簡化的例子如下(未提示用戶輸入以簡單起見)。的Python:使基於輸入和兩個以前的列表

a = 40 
a = float(a) 

b = 10 
b = float(b) 

c = [1, 2, 3, 4, 5] 
d = [2, 4, 6, 8, 10] 

e = [(a/b) if x == 1 else x * y for x in c and y in d] 

print(e) 

所以基本上我需要一種方法來表示對於x在C和y d在一起。在這種情況下,答案我希望實現的是[4, 8, 18, 32, 50]

回答

1

e = [(a/b) if x == 1 else x * y for x, y in zip(c, d)]

例如,list(zip([1,2,3], [4,5,6]))[(1, 4), (2, 5), (3, 6)]

+0

完美!非常感謝! – dazedandconfused

相關問題