在这个快速练习中亲自尝试枚举函数。完成skip_elements()
函数以返回列表中的所有其他元素,这次使用enumerate()
函数检查元素是处于偶数位置还是奇数位置。
def skip_elements(elements):
# code goes here
return ___
print(skip_elements(["a", "b", "c", "d", "e", "f", "g"])) # Should be ['a', 'c', 'e', 'g']
print(skip_elements(['Orange', 'Pineapple', 'Strawberry', 'Kiwi', 'Peach'])) # Should be ['Orange', 'Strawberry', 'Peach']
我下面的解决方案只返回">a"和"橙色">
我猜for
循环无法正常工作?我错过了什么?
def skip_elements(elements):
# code goes here
for i,alpha in enumerate(elements):
if i%2==0:
return alpha
for 循环工作正常,问题是您正在执行返回。当我们执行返回时,控件会退出循环。如果要返回元素,可以将它们存储在列表中,然后返回
def skip_elements(elements):
# code goes here
elements = []
for i,alpha in enumerate(elements):
if i%2==0:
elements.append(alpha)
return elements
您正在使用 return,它退出循环。如果你只想打印,你会想要这样的东西:
def skip_elements(elements):
# code goes here
for i,alpha in enumerate(elements):
if i%2==0:
print(alpha)
如果要返回列表:
def skip_elements(elements):
even_elements = []
for i,alpha in enumerate(elements):
if i%2==0:
even_elements.append(alpha)
return even_elements
使用 a 列表的 slice 属性 [开始:停止:步骤]
["a", "b", "c", "d", "e", "f", "g"][::2]