gpt4 book ai didi

Python,从原始形式对我的列表进行排序

转载 作者:行者123 更新时间:2023-11-28 21:08:04 24 4
gpt4 key购买 nike

我一直在搜索,但没有找到与我要查找的内容相匹配的线程。我想要做的是从 3 个不同的选项中对列表进行排序,时间顺序(原始列表)、字母顺序和反向排序。我已经弄清楚了所有这些,例如这是我的列表:

movies = ["Star Wars", "Hamilton", "Fight club", "Beck", "Wallander"]

这是我的代码:

def print_movies():
global movies
j = 0
while j < 1:
print("Hur vill du skriva ut filmerna?")
print("1. Kronologisk\n2. Alfabetisk stigande\n3. Alfabetisk fallande")
choice = input()
if int(choice) == 1:
print("Filmer i samlingen just nu:\n")
for i in movies:
print(i)
j = j+1
elif int(choice) == 2:
print("Filmer i samlingen just nu:\n")
movies.sort()
for i in movies:
print(i)
j = j+1
elif int(choice) == 3:
print("Filmer i samlingen just nu:\n")
movies.sort(reverse=True)
for p in movies:
print(p)
j = j+1
else:
print("Not a valid option, try again")

排序和一切正常,但是当我按下:2,按字母顺序排序时,它会打印出字母顺序,而当我下一次按下:1 时,它不会返回到时间顺序。所以选项 2 和 3 工作正常,它可以从最高字母字符排序到反向排序,但它不会回到原来的列表形式,我的意思是:

["Star Wars", "Hamilton", "Fight club", "Beck", "Wallander"]

当我按:1 时,它仍然按我之前输入的选项 2 或 3 排序。

非常感谢这里的帮助。谢谢!

最佳答案

movies.sort() 修改列表。所以你会失去原来的顺序。

尝试 for m in sorted(movies): 代替。

关于Python,从原始形式对我的列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40609980/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com