単純なリスト内包表記がどのように機能するかを理解しています。例:
[x*2 for x in range(5)] # returns [0,2,4,6,8]
また、ネストされたリストの理解がどのように機能するかを理解しています。
w_list = ["i_have_a_doubt", "with_the","nested_lists_comprehensions"]
# returns the list of strings without underscore and capitalized
print [replaced.title() for replaced in [el.replace("_"," ")for el in w_list]]
だから、私がこれをやろうとしたとき
l1 = [100,200,300]
l2 = [0,1,2]
[x + y for x in l2 for y in l1 ]
私はこれを期待していました:
[100,201,302]
しかし、私はこれを得ました:
[100,200,300,101,201,301,102,202,302]
だから私は問題を解決するより良い方法を手に入れました。それは私が望むものを与えてくれました
[x + y for x,y in zip(l1,l2)]
しかし、最初のコードで9要素が返されることを理解していませんでした