【发布时间】:2020-10-06 00:54:01
【问题描述】:
我正在尝试构建一个函数,如果输入的元组、列表和字符串已排序,则打印 true,否则打印 False。我尝试了两种不同的方法,但都没有成功。谁能告诉我哪部分出了问题?谢谢!!!
def is_ordered (*args):
for i in range(1,len(args)):
if args[i - 1] > args[i]:
return True
else:
return False
def is_ordered (*args):
if args == args.sorted()
return True
else:
return False
这是我创建的列表和元组。
sorted_list = [1,2,3,4,5,6,7]
is_ordered(sorted_list)
unsorted_list = [41,3,35,4,45,6,7]
is_ordered(unsorted_list)
sorted_tuple = (1,2,3,4,5,6,7)
is_ordered(sorted_tuple)
unsorted_tuple = (41,3,35,4,45,6,7)
is_ordered(unsorted_tuple)
stri = "datascience"
is_ordered(stri)
【问题讨论】:
-
您的函数采用 one 参数,而不是函数签名建议的多个参数
-
你的函数在第一次迭代时也立即返回
-
你为什么使用
*args而不是常规参数?
标签: python list function sorting tuples