我正在尝试定义一个接受整数列表列表作为输入的函数,例如[[2, 3], [45, 100, 2], [536], [103, 2, 8]]
。它应该返回列表的排序版本,按每个子列表中的整数之和排序,因此返回值为[[2, 3], [103, 2, 8], [45, 100, 2], [536]]
。我使用下面显示的代码完成了这个,但这依赖于获取用户输入而不是函数输入。有没有办法基于功能而不是用户输入来实现这一目标?任何帮助都会很棒!
user_list = raw_input("Please enter a list of integers: ")
input_list = user_list.split()
input_list = [eval(a) for a in input_list][0]
def sort_nested_lists(user_list):
return sorted(user_list, key=sum)
print sort_nested_lists(user_list)
答案 0 :(得分:0)
在Python的sorted()
中使用key = len参数user_list = raw_input("Please enter a list of integers: ")
print sorted(user_list, key=len, reverse=False)
EG。
user_list = [[1,2], [1,2,3,4], [1,2,3,4,5], [1,2,3], [1]]
Out: [[1], [1,2], [1,2,3], [1,2,3,4], [1,2,3,4,5]]