在上一節的合集中,我們了解了python 列表中元素的統計及計算的相關知識,本節我們將進一步了解一下python列表中元素的排序的相關知識。
在實際開發中,經常需要對列表進行排序。python中提供了兩種常用的對列表進行排序的方法:使用列表物件的sort()方法,使用內建的sorted()函式。
列表物件提供了sort()防範用於對原列表中的元素進行排序。排序後原列表中的元素順序發生改變,列表物件的sort()方法的語法格式如下:
listname.sort(key=none,reverse=false)例如:定義乙個儲存10名學生語文成績的列表,使用sort()方法對其進行排序。**如下:引數說明:
listname:表示要進行排序的列表
key:表示指定從每乙個元素中提取乙個用於比較的鍵(例如:設定 key=str.lower 表示在排序時不區分字母大小寫)
reverse:可選引數,如果將其值設定為true,則表示降序排列,如果為false,則表示公升序排列,預設為公升序排列。
grade=[98,99,97,100,100,96,94,89,95,100]使用sort()方法進行數值列表的排序比較簡單,但是使用sort()方法對字串列表進行排序時,採用的規則是先對大寫字母進行排序,然後在對小寫字母進行排序。如果想要對字串進行排序(不區分大小寫字母),需要指定其key引數。print("
原列表:
",grade)
grade.sort()
#進行公升序排列
print("
公升序:"
,grade)
grade.sort(reverse=true) #
進行降序排列
print("
降序:",grade)
例如:定義乙個儲存英文本串的列表,然後使用sort()方法對其進行公升序排列,可以使用下面的**:
char=["注:採用sort()方法對列表進行排序時,對中文的支援不好,排序的結果與我們常用的音序排序法或者筆畫排序法不一致,如果需要實現對中文內容的列表排序,還需要重新編寫相應的方法進行處理,不能直接使用sort()方法。cat","
tom","
angela
","pet"]
char.sort()
#預設區分大小寫字母排序
print("
區分大小寫字母
",char)
char.sort(key=str.lower) #
不區分大小寫字母排序
print("
不區分大小寫字母
",char)
在python中,提供了sorted()函式,用於對列表進行排序,使用該函式進行排序後,原列表的元素順序不變。sorted()函式的語法格式如下:
sorted(iterable,key=none,reverse=false)例如:定義乙個儲存10名學生語文成績的列表,然後使用sorted()函式對其進行排序,**如下:引數說明:
iterable:表示要進行排序的列表名稱
key:表示指定從每個元素中提取乙個用於比較的鍵(例如:設定 key=str.lower 表示在排序時不區分大小寫)
reverse:可選引數,如果將其指定為true 則表示為降序排列,如果為false 則表示公升序排序。
grade=[98,99,100,100,96,94,89,95,100]注:列表物件的sort()方法和內建的sorted()函式的作用基本相同,不同點在於使用sort()方法會改變原列表的元素順序,而使用sorted()函式時,會建立原列表的副本,該副本為排序後的列表。grade_as=sorted(grade) #
進行公升序排列
print("公升序"
,grade_as)
grade_des=sorted(grade,reverse=true) #
進行降序排列
print("降序"
,grade_des)
print("
原序列",grade)
花絮:
Python合集之Python字典(四)
ps 前段時間因為年底時間比較繁忙,沒有及時更新,望大家見諒,今天趁著大年初一趕緊給大家更新一波。由於字典是可變序列,所以可以隨時在字典中新增 鍵 值 對 向字典中新增元素的語法格式如下 dictionary key value 引數說明 dictionary 表示字典名稱 key 表示要新增元素的...
Python合集之Python元組(一)
在上一節的合集中,我們了解了python的二維列表的相關知識,本節我們將進一步了解一下python元組的相關知識。元組是python中另一種重要的序列結構,與列表類似,也是由一系列按特定順序排列的元素組成,但是他是不可變序列。因此,元組也可以稱為不可變的列表。在形式上,元組的所有元素都放在 中,兩個...
Python合集之Python選擇語句(三)
在上一節的合集中,我們了解了python流程控制語句中 if else 的相關知識,本節我們將進一步了解一下python流程控制語句中 if elif else.語句。在開發程式的時候,如果遇到多選一的情況,則可以使用 if.elif.else.語句,該語句是乙個多分支選擇語句,通常表現為 如果滿足...