Python中包含多个数据类型的排序列表

Python中包含多个数据类型的排序列表,python,list,Python,List,如何在Python3.4中对包含多个数据类型的列表进行排序? 例如:- lixt=[“Tak”、“jil”、“son”,54,84] lixt.sort() 错误: TypeError:“对于可以按项目的字符串表示进行排序的简单情况,请使用排序(您的\u列表,key=str) l = ["Tak","jil","son",54,84] sorted(l, key=str) 输出:[54,84,'Tak',jil',son']当您可以按项目的字符串表示进行排序时,对于简单的情况,请使用排序(您的

如何在Python3.4中对包含多个数据类型的列表进行排序? 例如:- lixt=[“Tak”、“jil”、“son”,54,84] lixt.sort()

错误: TypeError:“对于可以按项目的字符串表示进行排序的简单情况,请使用
排序(您的\u列表,key=str)

l = ["Tak","jil","son",54,84]
sorted(l, key=str)
输出:
[54,84,'Tak',jil',son']

当您可以按项目的字符串表示进行排序时,对于简单的情况,请使用
排序(您的\u列表,key=str)

l = ["Tak","jil","son",54,84]
sorted(l, key=str)

输出:
[54,84,'Tak',jil',son']
排序
接受三个参数:iterable,key和reverse,即
排序(iterable,[key=None],[reverse=False])
参数允许您定义一个函数,可以调用该函数来比较iterable中项目的值。以下是一些例子:

# notice the function name is supplied without brackets
sorted(["Eva", "eva", "string", "Aaron"], key=str.lower)

# the same result using lambda
sorted(["Eva", "eva", "string", "Aaron"], key=lambda x: x.lower())

# comparing by the second element in a tuple: (name, age)
name_ages = [("Eva", 12), ("Tom", 14), ("Gerald", 4)]
# output is [('Gerald', 4), ('Eva', 12), ('Tom', 14)]
sorted(name_ages, key=lambda x: x[1])  
使用
lambdas
或定义自己的函数,排序函数的用途非常广泛


NB:Use还可以使用
列表中的
参数。sort()
排序
接受三个参数:iterable、key和reverse,即
排序(iterable,[key=None],[reverse=False])
参数允许您定义一个函数,可以调用该函数来比较iterable中项目的值。以下是一些例子:

# notice the function name is supplied without brackets
sorted(["Eva", "eva", "string", "Aaron"], key=str.lower)

# the same result using lambda
sorted(["Eva", "eva", "string", "Aaron"], key=lambda x: x.lower())

# comparing by the second element in a tuple: (name, age)
name_ages = [("Eva", 12), ("Tom", 14), ("Gerald", 4)]
# output is [('Gerald', 4), ('Eva', 12), ('Tom', 14)]
sorted(name_ages, key=lambda x: x[1])  
使用
lambdas
或定义自己的函数,排序函数的用途非常广泛


NB:Use也可以使用
list.sort()中的
参数

您能告诉我们,
的“子”
大于还是小于
54
?只需使用sorted编写一个函数,将一个项作为参数并返回
str(项)
。然后将其用作排序的关键函数。。。你能告诉我们,
“son”
大于还是小于
54
?只需使用sorted编写一个函数,将项作为参数并返回
str(item)
。然后将其用作排序的关键函数。。。