Python中的sorted函数

Python中的sorted()函数

今天在做一个ner的项目,在对标签进行处理的时候,用到了一个sorted函数,发现并不会用。。。

记录一下:sorted(list, key, reverse)

list是给定的列表;
key是排序过程调用的函数,也就是排序依据;
reverse是降序还是升序,默认为False升序,True降序

举几个例子:

1、按照列表中的每个值的绝对值进行排序

a1 = [1, 3, 5, -2, -4, -6]
a2 = sorted(l1, key=abs)
print(a1)
print(a2)

#输出结果
[1, 3, 5, -2, -4, -6]
[1, -2, 3, -4, 5, -6]

2、按照列表中每个元素长度进行排序

a = [[1,2], [3,4,5,6], (7,), '123']
print(sorted(a,key=len))

#输出结果
[(7,), [1, 2], '123', [3, 4, 5, 6]]

3、按照词频大小进行降序(用的较多)

word_dict = {
    
    'apple':20, 'love':15}
sorted_word_dict = sorted(word_dict.items(), key=lambda d:d[1])
print(sorted_word_dict)

#输出结果
[('love', 15), ('apple', 20)]

sorted(d.items(), key=lambda x: x[1]) 中 d.items() 为待排序的对象;key=lambda x: x[1] 为对前面的对象中的第二维数据(即value)的值进行排序。 key=lambda 变量:变量[维数] 。维数可以按照自己的需要进行设置。

注意:word_dict.items()输出的是–>[(apple, 20), (love, 15)]

猜你喜欢

转载自blog.csdn.net/zy4828918/article/details/108781353