如何修复我的代码,以便它反转我列表中的元素?

我正在尝试创建自己的反向函数。这是我的代码:


X = [1,2,3,4,5]


def reverZe(Lis):

    nlst = []

    for i in range (1,len(Lis)+1):

        nlst.append(Lis[-1])

    return nlst


new = reverZe(X)


print(new)

结果应该将列表“X”反转为一个列表 [5,4,3,2,1]


问题是,在输出保持回来了,只在最后一个元素5是[5,5,5,5,5]。我该如何解决?


慕慕森
浏览 192回答 3
3回答

忽然笑

nlst = Lis[::-1],这是python中对列表进行切片的概念。X = [1,2,3,4,5]def reverZe(Lis):  nlst = Lis[::-1]  return nlstnew = reverZe(X)print(new)上述程序的输出将是 [5,4,3,2,1]

qq_花开花谢_0

以下是您可以遵循的一些流程:X = [1, 2, 3, 4, 5]# corrected version of your codedef reverZe(Lis):    nlst = []    for i in range(1, len(Lis)+1):        nlst.append(Lis[-i])    return nlst#Some other processes you can follow:# def reverZe(Lis):#     nlst = []#     for i in Lis[::-1]:#         nlst.append(i)#     return nlst# def reverZe(Lis):#     nlst = list(reversed(Lis))#     return nlst# def reverZe(Lis):#   nlst = Lis[::-1]#   return nlstnew = reverZe(X)print(new)

幕布斯6054654

您已经使用Lis[-1]which 始终访问列表中的最后一个元素,因此只返回该元素。改用这个 Lis[-i]def reverseInPlace(Lis):    nlst = []    for i in range (1,len(Lis)+1):        nlst.append(Lis[-i])    return nlst那应该工作。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python