Python 列表的基本操作介紹
1、向List中添加元素的方法
1.1 Python append()方法添加元素
append() 方法用于在列表的末尾追加元素,該方法的語(yǔ)法格式如下:
listname.append(obj)
其中,listname 表示要添加元素的列表;obj 表示到添加到列表末尾的數(shù)據(jù),它可以是單個(gè)元素,也可以是列表、元組等。
1.2 Python extend()方法添加元素
extend() 和 append() 的不同之處在于:extend() 不會(huì)把列表或者元祖視為一個(gè)整體,而是把它們包含的元素逐個(gè)添加到列表中。
extend() 方法的語(yǔ)法格式如下:
listname.extend(obj)
其中,listname 指的是要添加元素的列表;obj 表示到添加到列表末尾的數(shù)據(jù),它可以是單個(gè)元素,也可以是列表、元組等。
示例:
l = ['Python', 'C++', 'Java'] # 追加元素
l.extend('C')
print(l)
# 追加元組,元祖被拆分成多個(gè)元素
t = ('JavaScript', 'C#', 'Go')
l.extend(t)
print(l)
# 追加列表,列表也被拆分成多個(gè)元素
l.extend(['Ruby', 'SQL']) print(l)
運(yùn)行結(jié)果:
['Python', 'C++', 'Java', 'C']
['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go']
['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go', 'Ruby', 'SQL']
1.3 Python insert()方法插入元素
append() 和 extend() 方法只能在列表末尾插入元素,如果希望在列表中間某個(gè)位置插入元素,那么可以使用 insert() 方法。
insert() 的語(yǔ)法格式如下:
listname.insert(index,obj)
其中,index 表示指定位置的索引值。insert() 會(huì)將 obj 插入到 listname 列表第 index 個(gè)元素的位置。 當(dāng)插入列表或者元祖時(shí),insert() 也會(huì)將它們視為一個(gè)整體,作為一個(gè)元素插入到列表中,這一點(diǎn)和 append() 是一樣的。
2、向List中刪除元素的方法
在 Python 列表中刪除元素主要分為以下 3 種場(chǎng)景:
- 根據(jù)目標(biāo)元素所在位置的索引進(jìn)行刪除,可以使用 del 關(guān)鍵字或者
pop()方法; - 根據(jù)元素本身的值進(jìn)行刪除,可使用列表(
list類型)提供的remove()方法; - 將列表中所有元素全部刪除,可使用列表(
list類型)提供的clear()方法。
2.1 del:根據(jù)索引值刪除元素
del 可以刪除列表中的單個(gè)元素,格式為:
del listname[index]
其中,listname 表示列表名稱,index 表示元素的索引值。 del 也可以刪除中間一段連續(xù)的元素,
格式為:
del listname[start : end]
2.2 pop():根據(jù)索引值刪除元素
Python pop() 方法用來(lái)刪除列表中指定索引處的元素,
具體格式如下:
listname.pop(index)
其中,listname 表示列表名稱,index 表示索引值。如果不寫 index 參數(shù),默認(rèn)會(huì)刪除列表中的最后一個(gè)元素,類似于數(shù)據(jù)結(jié)構(gòu)中的“出棧”操作。
大部分編程語(yǔ)言都會(huì)提供和 pop() 相對(duì)應(yīng)的方法,就是 push() ,該方法用來(lái)將元素添加到列表的尾部,類似于數(shù)據(jù)結(jié)構(gòu)中的“入棧”操作。
但是 Python 是個(gè)例外,Python 并沒(méi)有提供 push() 方法,因?yàn)橥耆梢允褂?append() 來(lái)代替 push() 的功能。
2.3 remove():根據(jù)元素值進(jìn)行刪除
除了 del 關(guān)鍵字,Python 還提供了 remove() 方法,該方法會(huì)根據(jù)元素本身的值來(lái)進(jìn)行刪除操作。
需要注意的是,remove() 方法只會(huì)刪除第一個(gè)和指定值相同的元素,而且必須保證該元素是存在的,否則會(huì)引發(fā) ValueError 錯(cuò)誤。
nums = [40, 36, 89, 2, 36, 100, 7] #第一次刪除36 nums.remove(36) print(nums) #第二次刪除36 nums.remove(36) print(nums) #刪除78 nums.remove(78) print(nums)
運(yùn)行結(jié)果:
[40, 89, 2, 36, 100, 7]
[40, 89, 2, 100, 7]
Traceback (most recent call last):
File "C:\Users\mozhiyan\Desktop\demo.py", line 9, in <module>
nums.remove(78)
ValueError: list.remove(x): x not in list
最后一次刪除,因?yàn)?78 不存在導(dǎo)致報(bào)錯(cuò),所以我們?cè)谑褂?remove() 刪除元素時(shí)最好提前判斷一下。
2.4 clear():刪除列表所有元素
Python clear() 用來(lái)刪除列表的所有元素,也即清空列表,
請(qǐng)看下面的代碼:
url = list("http://c.biancheng.net/python/")
url.clear()
print(url)
運(yùn)行結(jié)果:
[]
3、list列表修改元素
3.1 修改單個(gè)元素
修改單個(gè)元素非常簡(jiǎn)單,直接對(duì)元素賦值即可。
請(qǐng)看下面的例子:
nums = [40, 36, 89, 2, 36, 100, 7] nums[2] = -26 #使用正數(shù)索引 nums[-3] = -66.2 #使用負(fù)數(shù)索引 print(nums)
運(yùn)行結(jié)果:
[40, 36, -26, 2, -66.2, 100, 7]
使用索引得到列表元素后,通過(guò)=賦值就改變了元素的值。
3.2 修改一組元素
Python 支持通過(guò)切片語(yǔ)法給一組元素賦值。在進(jìn)行這種操作時(shí),如果不指定步長(zhǎng)(step 參數(shù)),Python 就不要求新賦值的元素個(gè)數(shù)與原來(lái)的元素個(gè)數(shù)相同;這意味,該操作既可以為列表添加元素,也可以為列表刪除元素。
示例:
nums = [40, 36, 89, 2, 36, 100, 7] #修改第 1~4 個(gè)元素的值(不包括第4個(gè)元素) nums[1: 4] = [45.25, -77, -52.5] print(nums)
運(yùn)行結(jié)果:
[40, 45.25, -77, -52.5, 36, 100, 7]
4、list列表查找元素
4.1 index() 方法
index() 方法用來(lái)查找某個(gè)元素在列表中出現(xiàn)的位置(也就是索引),如果該元素不存在,則會(huì)導(dǎo)致 ValueError 錯(cuò)誤,所以在查找之前最好使用 count() 方法判斷一下。
index() 的語(yǔ)法格式為:
listname.index(obj,start,end)
其中,listname 表示列表名稱,obj 表示要查找的元素,start 表示起始位置,end 表示結(jié)束位置。
4.2 count()方法
count() 方法用來(lái)統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù),
基本語(yǔ)法格式為:
listname.count(obj)
其中,listname 代表列表名,obj 表示要統(tǒng)計(jì)的元素。
如果 count() 返回 0,就表示列表中不存在該元素,所以 count() 也可以用來(lái)判斷列表中的某個(gè)元素是否存在。
5、總結(jié)
Python中列表是可修改類型,在程序運(yùn)行過(guò)程中可以對(duì)列表的元素進(jìn)行插入和刪除運(yùn)算。但是元組卻是不可修改類型,要對(duì)其進(jìn)行更改操作可以通過(guò)再構(gòu)造一個(gè)新的元組替換舊的元組,來(lái)實(shí)現(xiàn)元素的插入和刪除。
到此這篇關(guān)于Python 列表的基本操作介紹的文章就介紹到這了,更多相關(guān)Python 列表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用Python實(shí)現(xiàn)SSH隧道界面功能
這篇文章主要介紹了使用Python實(shí)現(xiàn)一個(gè)SSH隧道界面功能,界面使用tkinter實(shí)現(xiàn),左邊是輸入隧道的信息,右邊為歷史列表,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2022-02-02
使用python實(shí)現(xiàn)壓縮PDF文件大小的方法
壓縮 PDF 文件能有效減小文件大小并提高文件傳輸?shù)男?同時(shí)還能節(jié)省計(jì)算機(jī)存儲(chǔ)空間,除了使用一些專業(yè)工具對(duì)PDF文件進(jìn)行壓縮,我們還可以通過(guò) Python 來(lái)執(zhí)行該操作,本文將分享一個(gè)簡(jiǎn)單有效的使用 Python 壓縮 PDF 文件的方法,需要的朋友可以參考下2024-06-06
關(guān)于Python字符編碼與二進(jìn)制不得不說(shuō)的一些事
這篇文章主要給大家介紹了關(guān)于Python字符編碼與二進(jìn)制不得不說(shuō)的一些事,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Python實(shí)現(xiàn)公歷(陽(yáng)歷)轉(zhuǎn)農(nóng)歷(陰歷)的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)公歷(陽(yáng)歷)轉(zhuǎn)農(nóng)歷(陰歷)的方法,涉及農(nóng)歷算法原理及Python日期運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
Python處理不同接口間參數(shù)依賴的方法總結(jié)
這篇文章主要為大家詳細(xì)介紹了如何使用Python編寫接口自動(dòng)化測(cè)試,以有效地處理不同接口之間的參數(shù)依賴,并提供豐富的示例代碼,希望對(duì)大家有所幫助2024-01-01
Python使用LSTM實(shí)現(xiàn)銷售額預(yù)測(cè)詳解
大家經(jīng)常會(huì)遇到一些需要預(yù)測(cè)的場(chǎng)景,比如預(yù)測(cè)品牌銷售額,預(yù)測(cè)產(chǎn)品銷量。本文給大家分享一波使用?LSTM?進(jìn)行端到端時(shí)間序列預(yù)測(cè)的完整代碼和詳細(xì)解釋,需要的可以參考一下2022-07-07
Python使用 Beanstalkd 做異步任務(wù)處理的方法
這篇文章主要介紹了Python使用 Beanstalkd 做異步任務(wù)處理的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04

