我对Python非常陌生,而且我正在努力绕过功能。我今天写了这篇文章,但我无法弄清楚它为什么不起作用。
x = [1,2,3,4,5,6,7,8]
def test():
y = []
for num in x:
if num > 4:
y.append(num)
return y
print(test())
所以,据我所知,for
循环应循环遍历x
的每个元素,测试它是否大于4.如果是,则该元素应该被添加到空列表y
。因此,预期的输出应为:
[5,6,7,8]
但是,我得到的就是这样:
[5]
,
表示for
循环不是......好,循环。它拒绝[1,2,3,4]
因为不超过4.那很好。它识别5大于4,因此将其添加到y
。那也没关系。但那只是......停止。据我了解,该函数应该向y
添加6,7和8,因为它们都符合大于4的标准。
我完全卡住了。如果有人能帮助我弄清楚为什么会这样,我真的很感激。
答案 0 :(得分:1)
您在第一次追加后停止执行。
试试这个:
x = [1,2,3,4,5,6,7,8]
def test():
y = []
for num in x:
if num > 4:
y.append(num)
return y
print(test())