我正在尝试定义一个名为 new_f
的新函数,只是为了练习:
函数的目的是:
x = ['1', '2', '3', '4']
y = new_f(x)
print(y)
那应该给出:
['4', '3', '2', '1']
所以它是 x 的反转。
我试过这样的事情:
def new_f(x):
y = len(x)
for z in range(y-1,-1,-1):
r = print([x[z]])
return r
但这给出了:
['4']
['3']
['2']
['1']
好吧,这不是我想要的,所以也许:
---------
for z in range(y-1,-1,-1):
r = [x[z]]
return r
然后我得到:
['1']
所以他检查了所有 z
并给了我最后一个。
我该如何解决这个问题?
提前致谢。
最佳答案
您可以将 r
初始化为一个空列表并将元素附加到它,最后返回 r
def new_f(x):
y = len(x)
r=[]
for z in range(y-1,-1,-1):
r.append(x[z])
return r
但是有一些优雅和更 pythonic 的方法来反转列表,如反向索引:
the_list[::-1]
或内置reversed
功能:
reversed(the_list)
关于python - Python中的函数编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29956084/