欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python列表常用函數(shù)使用詳解

 更新時間:2021年12月31日 10:08:43   作者:士別三日wyx  
這篇文章主要為大家介紹了Python列表常用的一些函數(shù)的使用詳解,并通過一些簡單的案例讓大家更快的理解,感興趣的可以跟隨小編一起學(xué)習(xí)一下

介紹?

append()

語法

list.append( element )

參數(shù)

element:任何類型的元素

列表「末尾」添加元素

name_list = ['zhangsan', 'lisi', 'wangwu']
name_list.append('zhaoliu')
print(name_list)

輸出:

['zhangsan', 'lisi', 'wangwu', 'zhaoliu']

列表末尾可添加 「任意類型」數(shù)據(jù),比如在列表中添加列表

name_list = ['zhangsan', 'lisi', 'wangwu']
name_list.append([1,2,3])
print(name_list)

輸出:

['zhangsan', 'lisi', 'wangwu', [1, 2, 3]]

append() 函數(shù)添加的是「地址」,當(dāng)被添加的列表發(fā)生變化時,添加后的列表也會 「同步變化」

list1 = ['zhangsan']
a = [1,2,3]
list1.append(a)  # 列表list1添加列表a
print(list1)
a.append(4)  # 列表a發(fā)生變化
list1.append(a)
print(list1)  # 列表list1也會同步變化

輸出:

['zhangsan', [1, 2, 3]]

['zhangsan', [1, 2, 3, 4], [1, 2, 3, 4]]

補充兩個概念:

  • 淺拷貝:拷貝這個對象的引用
  • 深拷貝:拷貝對象的內(nèi)容

「深拷貝」可解決 append() 函數(shù)添加列表的同步問題

list1 = ['zhangsan']
a = [1,2,3]
list1.append(copy.deepcopy(a))  # 深拷貝列表a
print(list1)
a.append(4)  # 列表a發(fā)生變化
list1.append(copy.deepcopy(a))  # 深拷貝列表a
print(list1)  # 列表list1不再同步變化

輸出:

['zhangsan', [1, 2, 3]]

['zhangsan', [1, 2, 3], [1, 2, 3, 4]]

append() 函數(shù)和 extend() 函數(shù)的區(qū)別

1.append() 添加的是元素「引用」,而 extend() 添加的是元素的「值」

2.append() 可以添加「任意類型」元素,而 extend() 只能添加「序列」

比如,添加列表時, append() 會添加整個列表,而 extend() 只會添加列表中的值

list1 = ['zhangsan', 'lisi', 'wangwu']
list2 = ['zhangsan', 'lisi', 'wangwu']
list1.append([1,2,3])
print('append添加整個列表:', list1)
list2.extend([1,2,3])
print('extend添加列表的值:', list2)

輸出:

append添加整個列表: ['zhangsan', 'lisi', 'wangwu', [1, 2, 3]]

extend添加列表的值: ['zhangsan', 'lisi', 'wangwu', 1, 2, 3]

extend()

語法

list.extend(iterable)

參數(shù)

iterable:任何可迭代對象(列表、元祖等)

向列表 「末尾」添加列表內(nèi)容

list1 = ['zhangsan', 'lisi', 'wangwu']
list1.extend([1,2,3])  # 列表末尾添加列表
print(list1)
list1.extend((4,5,6))  # 列表末尾添加元祖
print(list1)

輸出:

['zhangsan', 'lisi', 'wangwu', 1, 2, 3]

['zhangsan', 'lisi', 'wangwu', 1, 2, 3, 4, 5, 6]

Python中的 「字符串」本質(zhì)上也是一種數(shù)組,屬于可迭代對象,可以使用 extend() 添加

list1 = ['zhangsan', 'lisi', 'wangwu']
list1.extend('abc')  # 列表末尾添加字符串
print(list1)

輸出:

['zhangsan', 'lisi', 'wangwu', 'a', 'b', 'c']

insert()

語法

list.insert( index, element)

參數(shù)

  • index:數(shù)字,指定插入的位置
  • element:任意類型,需要插入的元素

insert() 函數(shù)可以添加「任意類型」

list1 = ['zhangsan', 'lisi']
list1.insert(2, 2)  # 添加整形
print(list1)
list1.insert(3, 'str')  # 添加字符串
print(list1)
list1.insert(4, [1,2,3])  # 添加列表
print(list1)
list1.insert(5, (4,5,6))  # 添加字典
print(list1)

輸出:

['zhangsan', 'lisi', 2]

['zhangsan', 'lisi', 2, 'str']

['zhangsan', 'lisi', 2, 'str', [1, 2, 3]]

['zhangsan', 'lisi', 2, 'str', [1, 2, 3], (4, 5, 6)]

insert同樣存在 「列表同步」問題,改為 「軟拷貝」即可

list1 = ['zhangsan', 'lisi']
a = [1,2,3]
list1.insert(2, a)  # 添加列表a
print(list1)
a.append(4)  # 列表a發(fā)生變化
print(list1)  # 列表同步發(fā)生變化

輸出:

['zhangsan', 'lisi', [1, 2, 3]]

['zhangsan', 'lisi', [1, 2, 3, 4]]

pop()

語法

list.pop( index )

參數(shù)

  • index:數(shù)字,需要刪除的索引位置,默認(rèn)值-1
  • 返回值:刪除的值

不傳參數(shù)時,默認(rèn)刪除「最后」一個值

list1 = [1, 2, 3, 4]
list1.pop()  
print(list1)

輸出:

[1, 2, 3]

刪除 「指定」位置的元素

list1 = [1, 2, 3, 4]
list1.pop(1)  # 刪除第二個值
print(list1)

輸出:

[1, 3, 4]

「返回」被刪除的元素

list1 = [1, 2, 3, 4]
a = list1.pop(1)  # 刪除第二個值,并返回被刪除的值
print(a)

輸出:

2

remove()

語法

list.remove( element )

參數(shù)

element:任意數(shù)據(jù)類型

remove() 函數(shù)刪除「普通類型」元素

list1 = ['zhangsan', 'lisi', 1, 2]
list1.remove(1)  # 刪除數(shù)字
print(list1)
list1.remove('zhangsan')  # 刪除字符串
print(list1)

輸出:

['zhangsan', 'lisi', 2]

['lisi', 2]

remove() 函數(shù)刪除 「對象類型」元素

list1 = [1, 2, [3, 4], (5, 6)]
a = [3, 4]
b = (5, 6)
list1.remove(a)  # 刪除列表類型
print(list1)
list1.remove(b)  # 刪除元祖類型
print(list1)

輸出:

[1, 2, (5, 6)]

[1, 2]

remove() 函數(shù)刪除對象類型的「前提」是,列表中的元素是對象類型,以下這種方式會報錯

list1 = [1, 2, 3, 4, 5]
list1.remove([1,2])

輸出:

Traceback (most recent call last):

? File "E:/data/PrCharm/test1/55.py", line 2, in <module>

? ? list1.remove([1,2])

ValueError: list.remove(x): x not in list

# 值錯誤: 需要刪除的值不在列表中

remove() 函數(shù)「一次」只能刪除一維數(shù)組中的「一個」元素,自己刪自己也不行

list1 = [1, 2, 3, 4, 5]
print('我自己在我自己里面嗎?', list1 in list1)
list1.remove(list1)

輸出:

Traceback (most recent call last):

? File "E:/data/PrCharm/test1/55.py", line 3, in <module>

? ? list1.remove(list1)

ValueError: list.remove(x): x not in list

我自己在我自己里面嗎? False

到此這篇關(guān)于Python列表常用函數(shù)使用詳解的文章就介紹到這了,更多相關(guān)Python列表常用函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3實現(xiàn)Dijkstra算法最短路徑的實現(xiàn)

    python3實現(xiàn)Dijkstra算法最短路徑的實現(xiàn)

    這篇文章主要介紹了python3實現(xiàn)Dijkstra算法最短路徑的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Python如何在windows環(huán)境安裝pip及rarfile

    Python如何在windows環(huán)境安裝pip及rarfile

    這篇文章主要介紹了Python如何在windows環(huán)境安裝pip及rarfile,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • 使用torchtext導(dǎo)入NLP數(shù)據(jù)集的操作

    使用torchtext導(dǎo)入NLP數(shù)據(jù)集的操作

    這篇文章主要介紹了使用torchtext導(dǎo)入NLP數(shù)據(jù)集的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 解決python 在for循環(huán)并且pop數(shù)組的時候會跳過某些元素的問題

    解決python 在for循環(huán)并且pop數(shù)組的時候會跳過某些元素的問題

    這篇文章主要介紹了解決python 在for循環(huán)并且pop數(shù)組的時候會跳過某些元素的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Python Numpy實現(xiàn)修改數(shù)組形狀

    Python Numpy實現(xiàn)修改數(shù)組形狀

    NumPy(Numerical Python)是Python中用于處理數(shù)組和矩陣的重要庫,它提供了豐富的功能,用于科學(xué)計算,本文主要介紹了如何使用NumPy提供的方法來改變數(shù)組的形狀,感興趣的可以了解下
    2023-11-11
  • Python?Requests?基本使用及Requests與?urllib?區(qū)別

    Python?Requests?基本使用及Requests與?urllib?區(qū)別

    在使用Python爬蟲時,需要模擬發(fā)起網(wǎng)絡(luò)請求,主要用到的庫有requests庫和python內(nèi)置的urllib庫,一般建議使用requests,它是對urllib的再次封裝,今天通過本文給大家講解Python?Requests使用及urllib區(qū)別,感興趣的朋友一起看看吧
    2022-11-11
  • Python微信公眾號開發(fā)平臺

    Python微信公眾號開發(fā)平臺

    這篇文章主要介紹了Python微信公眾號開發(fā)平臺,本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2018-01-01
  • Python3?中return和yield的區(qū)別

    Python3?中return和yield的區(qū)別

    這篇文章主要介紹了Python3?中return和yield的區(qū)別,return和yield都用來返回值;在一次性地返回所有值場景中return和yield的作用是一樣的,但是具體有什么區(qū)別呢,帶著疑問一起進(jìn)入下面文章學(xué)習(xí)詳細(xì)內(nèi)容吧
    2022-06-06
  • Python爬蟲運用正則表達(dá)式的方法和優(yōu)缺點

    Python爬蟲運用正則表達(dá)式的方法和優(yōu)缺點

    這篇文章主要給大家介紹了關(guān)于Python爬蟲運用正則表達(dá)式的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 詳解python中mongoengine庫用法

    詳解python中mongoengine庫用法

    這篇文章主要介紹了python中mongoengine庫用法,主要包括MongoDB的安裝與連接過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07

最新評論