def sorting(String, List):
List = [1, 3, 2, 4, 6, 5]
if String == "asc":
return List.sort()
elif String == "desc":
return List.sort(reverse=True)
elif String == "none":
return List
res = sorting("asc", List)
print("List in ascending order: ", res)
这段代码不起作用,如果字符串是asc或desc,我希望它按升序和降序输出列表,如果字符串为none,则按原样输出列表。我能得到帮助吗?
List.sort()
对列表进行适当排序,不返回任何内容。您的两个选择是:
def sorting(String, List):
List = [1, 3, 2, 4, 6, 5]
if String == "asc":
List.sort()
elif String == "desc":
List.sort(reverse=True)
return List
这带来了更改原始列表的不幸副作用,在这种情况下这并不重要。另一种方法是使用sorted
函数,该函数按排序顺序返回一个新列表。
def sorting(String, List):
List = [1, 3, 2, 4, 6, 5]
if String == "asc":
return sorted(List)
elif String == "desc":
return sorted(List, reverse=True)
return List