Python 系列
文章目录
前言
编写代码的过程中,可能需要对一个列表重新进行排序顺序的操作,可以使用sort来实现
一、sort 是什么?
sort 可以对原来列表进行排序,返回值为None
二、使用步骤
1.简单语法
代码如下(示例):
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
2.具体的使用
1.代码如下(示例):
默认递增的排序
one_list = [1, 2, 3, 6, 10, 5, 4]
one_list.sort()
print(one_list)#[1, 2, 3, 4, 5, 6, 10]
2.reverse
reverse 参数是true的时候降序,false 是升序
one_list = [1, 2, 3, 6, 10, 5, 4]
one_list.sort(reverse=True)
print(one_list)#[10, 6, 5, 4, 3, 2, 1]
one_list.sort(reverse=False)
print(one_list)#[1, 2, 3, 4, 5, 6, 10]
3.如果list的内容是字母的情况,按照字母的顺序来时序,有分大小写。先处理大写的。
one_list = ['Google', 'Runoob', 'Taobao', 'Facebook']
one_list.sort(reverse=True)
print(one_list)#['Taobao', 'Runoob', 'Google', 'Facebook']
one_list.sort(reverse=False)
print(one_list)#['Facebook', 'Google', 'Runoob', 'Taobao']
如果需要不区分大小写,
one_list.sort(key=str.lower,reverse=True)
4.指定可以内容来排序
# 长度的降序,list 里面的长度来排序
one_list = ['Google', 'Runoob', 'Taobao', 'Facebook']
one_list.sort(key=len,reverse=True)
print(one_list)
5.使用lambda 来进行特殊的处理
比如:我只要比对第一个字母
def only_one(e):
return e[0]
one_list = ['Google', 'Runoob', 'Taobao', 'Facebook']
one_list.sort(key=only_one, reverse=True)
# 或者
one_list.sort(key=lambda x: x[0], reverse=True)
print(one_list)
#['Taobao', 'Runoob', 'Google', 'Facebook']