我有2個不同的碼:For循環清晰度
def bar(a):
return [ x**3 for x in a ]
而且
def cube(a):
for x in a:
return x**3
如果我定義巴(a)爲([1,2,3,4]),我的輸出將是[1,8,27,64]。 如果我將cube(a)定義爲([1,2,3,4]),那麼我的輸出結果就是1. 這是爲什麼?他們是不是應該給出相同的結果?對於x中的每個x,「a中的x」是否表示進行以下迭代?
如果你想把第二個return語句改成yield語句,你的思維方式實際上是一個生成器。 – roippi