【发布时间】:2019-05-17 12:29:34
【问题描述】:
我尝试了一个练习,如果列表按升序排序,它希望我返回 True,否则返回 False。 List1 应该返回 True,List2 应该返回 False。
我尝试创建一个名为 sort 的新变量,以使用 sort 方法对其进行排序并将其与未修改列表进行比较,并使用 for 循环检查已排序列表和未修改列表中的元素是否以相同的顺序相互匹配.我不太确定如何正确解决这个问题,因为我得到了 False 回报。
def is_sorted(t):
sort = t.sort()
for element in t:
if t == sort:
return True
else:
return False
def main():
list1 = [1,2,2]
print(is_sorted(list1))
list2 = ['b', 'a']
print(is_sorted(list2))
main()
【问题讨论】:
-
for element in t: if t == sort:没有意义,为什么您需要检查整个列表中的每个项目是否相等一次?另请注意,list.sort是就地,它返回None并改变t。
标签: python python-3.x list sorting