本篇內(nèi)容介紹了“Python列表的使用方法有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序制作、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了原陽(yáng)免費(fèi)建站歡迎大家使用!
列表由一系列按特定順序排列的元素組成。這些元素可以是:數(shù)字、字母、字符串等其它類(lèi)型的數(shù)據(jù)。在 Python 中,用方括號(hào) [ ]
來(lái)表示列表,并用逗號(hào)來(lái)分隔其中的元素。下面是一個(gè)簡(jiǎn)單的列表示例:
Week_list = ["Monday", "Tuseday", "WeDNSeday", "Thursday", "Friday", "Saturday", "Sunday"] print(week_list)
如果你使用print()函數(shù), Python 將打印列表的內(nèi)部表示,包括方括號(hào):
['Monday', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
如果你想直接輸出列表里的每個(gè)元素,那么就得學(xué)習(xí)如何訪問(wèn)列表的元素。
列表是有序集合,因此要訪問(wèn)列表的任何元素,只需知道該元素在列表中的位置即可。要訪問(wèn)列表元素,可指出列表的名稱,再指出元素的索引,并將其放在方括號(hào)內(nèi)。例如,我們要獲取上面列表中的Friday:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(Week_list[4])
以上演示了訪問(wèn)列表元素的語(yǔ)法。當(dāng)你請(qǐng)求獲取列表元素時(shí), Python 只返回該元素值,而不包括方括號(hào)和引號(hào):
Friday
當(dāng)然,如果你想依次輸出列表中的每一個(gè)元素,可以通過(guò)for實(shí)現(xiàn):
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] for day in Week_list: print(day)
通過(guò)for循環(huán)遍歷列表,依次輸出每一個(gè)元素:
Monday Tuseday Wednseday Thursday Friday Saturday Sunday
嵌套列表即在列表里創(chuàng)建其它列表,例如:
list1 = [1, 2, 3] list2 = ["曹操", "孫權(quán)", "劉備"] list = [list1, list2] print(list)
嵌套列表相當(dāng)于列表里的元素是列表:
[[1, 2, 3], ['曹操', '孫權(quán)', '劉備']]
當(dāng)想要取列表里的一個(gè)元素時(shí),比如“曹操”,就需要學(xué)習(xí)索引的用法。
索引值與元素的位置有關(guān)。在 Python 中,第一個(gè)列表元素的索引為 0 ,而不是 1 。根據(jù)這種簡(jiǎn)單的計(jì)數(shù)方式,要訪問(wèn)列表的任何元素,都可將其位置減 1 ,并將結(jié)果作為索引。例如,要訪問(wèn)第10個(gè)列表元素,可使用索引 9。
對(duì)于普通的列表,當(dāng)我們想訪問(wèn)其第5個(gè)元素時(shí):
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(Week_list[4])
程序輸入:
Friday
對(duì)于潛逃列表,當(dāng)我們想訪問(wèn)其中的元素,比如上面列表中的“曹操”,則通過(guò)如下方式:
list = [[1, 2, 3], ['曹操', '孫權(quán)', '劉備']] print(list[1][0])
程序輸入:
曹操
其中,list[1][0]中的索引值1表示取第二個(gè)列表,索引值0表示取第二個(gè)列表中的第一個(gè)元素。
通過(guò)索引可以訪問(wèn)單個(gè)列表元素,通過(guò)切片則可以處理列表的全部或部分元素。要?jiǎng)?chuàng)建切片,可指定要使用的第一個(gè)元素和最后一個(gè)元素的索引。主要注意的是:Python 在到達(dá)你指定的第二個(gè)索引前面的元素后停止。
1.例如:要輸出列表中的前三個(gè)元素,需要指定索引 0~3 ,這將輸出分別為 0 、 1 和 2 的元素。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(Week_list[0:3])
通過(guò)切片取列表的前三個(gè)元素:
['Monday', 'Tuseday', 'Wednseday']
2.你也可以獲取列表的任何子集,例如,如果你要提取列表的第 2~6 個(gè)元素,可將起始索引指定為 1 ,并將終止索引指定為 6 :
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(Week_list[1:6])
輸出周二至周六:
['Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday']
3.如果沒(méi)有指定第一個(gè)索引, Python 將自動(dòng)從列表開(kāi)頭開(kāi)始:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(Week_list[:6])
輸出周一至周六:
['Monday', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday']
4.如果想取從第 3 個(gè)元素到列表末尾的所有元素,也可以通過(guò)如下方式:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(Week_list[2:])
返回周三至周天:
['Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
5.如果要遍歷列表的部分元素,則可在 for 循環(huán)中使用切片。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] for day in Week_list[:3]: print(day)
遍歷列表1至3個(gè)元素,并輸出:
Monday Tuseday Wednseday
在開(kāi)發(fā)過(guò)程中,我們經(jīng)常需要根據(jù)既有列表創(chuàng)建全新的列表。下面來(lái)介紹復(fù)制列表的工作原理,以及復(fù)制列表可提供極大幫助的一種情形。
要復(fù)制列表,可創(chuàng)建一個(gè)包含整個(gè)列表的切片,方法是同時(shí)省略起始索引和終止索引 [ : ]
。這讓 Python 創(chuàng)建一個(gè)始于第一個(gè)元素,終止于最后一個(gè)元素的切片,即復(fù)制整個(gè)列表。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list_copy1 = Week_list Week_list_copy2 = Week_list[:] print("Week_list:", id(Week_list)) print("Week_list_copy1:", id(Week_list_copy1)) print("Week_list_copy2:", id(Week_list_copy2))
我們通過(guò)采用和不采用 [ : ]
的兩種方式進(jìn)行復(fù)制,得到列表的id如下:
Week_list: 298963473096 Week_list_copy1: 298963473096 Week_list_copy2: 298963418440
從結(jié)果可以看出:Week_list_copy1與原列表Week_list的id相同,說(shuō)明Week_list_copy1和原列表指向的是同一個(gè)列表;Week_list_copy2與原列表Week_list的id不同,說(shuō)明通過(guò) [ : ]
的方式復(fù)制,創(chuàng)建的才是一個(gè)新的列表。
在Python中,包含一些內(nèi)置函數(shù),可以輕松處理像列表這一類(lèi)型的數(shù)據(jù)。
對(duì)于普通列表,返回列表元素的個(gè)數(shù):
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] print(len(Week_list))
程序輸出:
7
對(duì)于嵌套列表,返回列表中列表的個(gè)數(shù):
list = [[1, 2, 3], ['曹操', '孫權(quán)', '劉備']] print(len(list))
程序輸出:
2
max() 方法返回列表元素中的最大值:
list1, list2 = ['Google', 'Baidu', 'Taobao'], [1, 2, 3] print("list1 最大元素值 : ", max(list1)) print("list2 最大元素值 : ", max(list2))
輸出列表中元素的最大值:
list1 最大元素值 : Taobao list2 最大元素值 : 3
min() 方法返回列表元素中的最小值:
list1, list2 = ['Google', 'Baidu', 'Taobao'], [1, 2, 3] print("list1 最小元素值 : ", min(list1)) print("list2 最小元素值 : ", min(list2))
輸出列表中元素的最小值:
list1 最小元素值 : Baidu list2 最小元素值 : 1
list() 方法用于將元組或字符串轉(zhuǎn)換為列表:
str = "Hello Python" list2 = list(str) print("列表元素 : ", list2) Tuple = (123, 'Google', 'baidu', 'Taobao') list1 = list(Tuple) print("列表元素 : ", list1)
程序結(jié)果:
列表元素 : ['H', 'e', 'l', 'l', 'o', ' ', 'P', 'y', 't', 'h', 'o', 'n'] 列表元素 : [123, 'Google', 'baidu', 'Taobao']
注:元組與列表是非常類(lèi)似的,區(qū)別在于元組的元素值不能修改,元組是放在括號(hào)中,列表是放于方括號(hào)中。
修改列表元素的語(yǔ)法與訪問(wèn)列表元素的語(yǔ)法類(lèi)似。要修改列表元素,可指定列表名和要修改的元素的索引,再指定該元素的新值。比如下面,我們將列表中的第一個(gè)值:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list[0] = "星期一" print(Week_list)
將列表中的Monday改為“星期一”:
['星期一', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
當(dāng)然,你可以修改任何列表元素的值,而不僅僅是第一個(gè)元素的值。
在列表中添加新元素時(shí),最簡(jiǎn)單的方式是使用append()將元素添加到列表末尾:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.append(100) print(Week_list)
將100添加到列表末尾:
['Monday', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday', 100]
使用append() 能很輕松地創(chuàng)建列表,例如,你可以先創(chuàng)建一個(gè)空列表,再使用一系列的 append() 語(yǔ)句添加元素。下面來(lái)創(chuàng)建一個(gè)空列表,再在其中添加元素:
Week_list = [] Week_list.append(1) Week_list.append(2) Week_list.append(3) print(Week_list)
程序輸出:
[1, 2, 3]
使用方法 insert() 可在列表的任何位置添加新元素。為此,你需要指定新元素的索引和值:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.insert(0, 100) print(Week_list)
在列表開(kāi)頭添加100:
[100, 'Monday', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
在數(shù)據(jù)處理過(guò)程中,我們經(jīng)常需要從列表中刪除一個(gè)或多個(gè)元素。Python提供了4中刪除列表中元素的方法:
1.使用 del 語(yǔ)句刪除元素。如果知道要?jiǎng)h除的元素在列表中的位置,可使用 del 語(yǔ)句。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] del Week_list[0] print(Week_list)
刪除列表中第一個(gè)元素:
['Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
2.使用方法 pop() 刪除元素。方法 pop() 可刪除列表末尾的元素,并讓你能夠接著使用它。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.pop() print(Week_list)
刪除列表中最后一個(gè)元素:
['Monday', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday']
3.刪除列表中任何位置處的元素。實(shí)際上,使用 pop() 也可以刪除列表中任何位置的元素,只需在括號(hào)中指定要?jiǎng)h除的元素的索引即可。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.pop(1) print(Week_list)
刪除列表中第二個(gè)元素:
['Monday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
注:如果你不確定該使用 del 語(yǔ)句還是 pop() 方法,下面是一個(gè)簡(jiǎn)單的判斷標(biāo)準(zhǔn):如果你要從列表中刪除一個(gè)元素,且不再以任何方式使用它,就使用 del 語(yǔ)句;如果你要在刪除元素后還能繼續(xù)使用它,就使用方法 pop() 。
4.根據(jù)值刪除元素。有時(shí)候,你不知道要從列表中刪除的值所處的位置。如果你只知道要?jiǎng)h除的元素的值,可使用方法 remove() 。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.remove("Monday") print(Week_list)
刪除列表中的元素"Monday":
['Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
注:remove() 刪除的是列表中某個(gè)值的第一個(gè)匹配項(xiàng)
在Python,+
也可作為拼接操作符,將不同列表拼接成一個(gè)列表:
list1 = [1, 2, 3] list2 = [4, 5, 6] print(list1 + list2)
拼接成一個(gè)列表后:
[1, 2, 3, 4, 5, 6]
使用 *
操作符,可以輕松實(shí)現(xiàn)列表元素的復(fù)制:
list = [1, 2, 3] print(list * 2)
將列表中所有元素復(fù)制到2倍:
[1, 2, 3, 1, 2, 3]
同樣地道理,也可以復(fù)制多倍。
在實(shí)際開(kāi)發(fā)過(guò)程中,有時(shí)候你希望保留列表元素最初的排列順序,而有時(shí)候又需要調(diào)整排列順序。 Python 提供了很多組織列表的方式,可根據(jù)具體情況選用。
sort() 讓你能夠較為輕松地對(duì)列表進(jìn)行排序,下面對(duì)列表中的元素按照字母進(jìn)行排序:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.sort() print(Week_list)
通過(guò) sort()進(jìn)行排序,是永久性地改變?cè)斜碇性氐捻樞颍?/p>
['Friday', 'Monday', 'Saturday', 'Sunday', 'Thursday', 'Tuseday', 'Wednseday']
當(dāng)要降序排序時(shí),只需向 sort() 方法傳遞參數(shù) reverse=True,如下所示:
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.sort(reverse=True) print(Week_list)
降序排序結(jié)果如下所示:
['Wednseday', 'Tuseday', 'Thursday', 'Sunday', 'Saturday', 'Monday', 'Friday']
有時(shí)候想對(duì)列表進(jìn)行排序,又需要時(shí)保留原列表元素的順序,就可以使用sorted()函數(shù)。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list_sorted = sorted(Week_list) print(Week_list_sorted) print(Week_list)
比較排序后的輸結(jié)果:
['Friday', 'Monday', 'Saturday', 'Sunday', 'Thursday', 'Tuseday', 'Wednseday'] ['Monday', 'Tuseday', 'Wednseday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
可以看出:sorted() 并沒(méi)有改變?cè)斜碇性氐捻樞颉?/p>
count() 方法用于統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù)。比如:
list = [1, 2, 2, 2, 3] print("列表中2的個(gè)數(shù):", list.count(2))
運(yùn)行結(jié)果:
列表中2的個(gè)數(shù): 3
index() 函數(shù)用于從列表中找出某個(gè)值第一個(gè)匹配項(xiàng)的索引位置。比如找出列表中的2的索引:
list = [1, 2, 2, 2, 3] print("列表中2第一次出現(xiàn)的索引:", list.index(2))
運(yùn)行結(jié)果:
列表中2第一次出現(xiàn)的索引: 1
另外,也可以指定從列表某個(gè)位置開(kāi)始搜索:
list = [1, 2, 2, 2, 3, 2, 3] print("從第五個(gè)元素開(kāi)始,列表中2第一次出現(xiàn)的索引:", list.index(2, 4))
從索引值為4的元素開(kāi)始搜索,結(jié)果為:
從第五個(gè)元素開(kāi)始,列表中2第一次出現(xiàn)的索引: 5
reverse() 函數(shù)用于反向列表中元素。當(dāng)我們要反向輸出列表中元素時(shí):
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.reverse() print(Week_list)
顛倒列表中元素的位置后,輸出結(jié)果為:
['Sunday', 'Saturday', 'Friday', 'Thursday', 'Wednseday', 'Tuseday', 'Monday']
clear() 函數(shù)用于清空列表,類(lèi)似于 del a[:]。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list.clear() print ("列表清空后 : ", Week_list)
列表清空后:
列表清空后 : []
copy() 函數(shù)用于復(fù)制列表,類(lèi)似于前面講到的通過(guò)索引[:]復(fù)制的方式。
Week_list = ["Monday", "Tuseday", "Wednseday", "Thursday", "Friday", "Saturday", "Sunday"] Week_list_copy1 = Week_list.copy() print("Week_list:", id(Week_list)) print("Week_list_copy():", id(Week_list_copy1))
運(yùn)行結(jié)果:
Week_list: 250643256008 Week_list_copy(): 250643201352
可以看出:使用copy()函數(shù)復(fù)制的方式與通過(guò)[:]復(fù)制的方式類(lèi)似,都是創(chuàng)建了一個(gè)新的列表。
“Python列表的使用方法有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!