pytho列表集合(pytho中列表list的用法)
导语:Python合集之Python列表(五)
在上一节的合集中,我们了解了Python 列表中元素的统计及计算的相关知识,本节我们将进一步了解一下Python列表中元素的排序的相关知识。
在实际开发中,经常需要对列表进行排序。Python中提供了两种常用的对列表进行排序的方法:使用列表对象的sort()方法,使用内置的sorted()函数。
1.使用列表对象的sort()方法
列表对象提供了sort()防范用于对原列表中的元素进行排序。排序后原列表中的元素顺序发生改变,列表对象的sort()方法的语法格式如下:
listname.sort(key=none,reverse=false)参数说明:listname:表示要进行排序的列表key:表示指定从每一个元素中提取一个用于比较的键(例如:设置 key=str.lower 表示在排序时不区分字母大小写)reverse:可选参数,如果将其值设置为true,则表示降序排列,如果为false,则表示升序排列,默认为升序排列。
例如:定义一个保存10名学生语文成绩的列表,使用sort()方法对其进行排序。代码如下:
grade=[98,99,97,100,100,96,94,89,95,100]print(&34;,grade)grade.sort() 34;升序:&进行降序排列print(&34;,grade)
使用sort()方法进行数值列表的排序比较简单,但是使用sort()方法对字符串列表进行排序时,采用的规则是先对大写字母进行排序,然后在对小写字母进行排序。如果想要对字符串进行排序(不区分大小写字母),需要指定其key参数。
例如:定义一个保存英文字符串的列表,然后使用sort()方法对其进行升序排列,可以使用下面的代码:
char=[&34;,&34;,&34;,&34;]char.sort() 34;区分大小写字母&不区分大小写字母排序print(&34;,char)
注:采用sort()方法对列表进行排序时,对中文的支持不好,排序的结果与我们常用的音序排序法或者笔画排序法不一致,如果需要实现对中文内容的列表排序,还需要重新编写相应的方法进行处理,不能直接使用sort()方法。
2.使用内置的sorted()函数实现
在Python中,提供了sorted()函数,用于对列表进行排序,使用该函数进行排序后,原列表的元素顺序不变。sorted()函数的语法格式如下:
sorted(iterable,key=none,reverse=false)参数说明:iterable:表示要进行排序的列表名称key:表示指定从每个元素中提取一个用于比较的键(例如:设置 key=str.lower 表示在排序时不区分大小写)reverse:可选参数,如果将其指定为true 则表示为降序排列,如果为false 则表示升序排序。
例如:定义一个保存10名学生语文成绩的列表,然后使用sorted()函数对其进行排序,代码如下:
grade=[98,99,100,100,96,94,89,95,100]grade_as=sorted(grade) 34;升序&进行降序排列print(&34;,grade_des)print(&34;,grade)
注:列表对象的sort()方法和内置的sorted()函数的作用基本相同,不同点在于使用sort()方法会改变原列表的元素顺序,而使用sorted()函数时,会建立原列表的副本,该副本为排序后的列表。
花絮:
本期的Python 列表元素的排序就分享到这里,下期我们将继续分享Python中列表的推导式的相关知识,感兴趣的朋友可以关注我。
本文内容由小馨整理编辑!