python中列表添加元素的幾種方式(+、append()、extend())
1、使用+加號(hào)
+加號(hào)是將兩個(gè)list列表相加,返回一個(gè)新的列表對(duì)象,會(huì)消耗額外的內(nèi)存。
#!/usr/bin/env python # -*- coding:utf-8 -*- if __name__ == '__main__': a = [1, 2, 3] b = [4, 5, 6] c = a + b print(c)
輸出:
[1, 2, 3, 4, 5, 6]
Process finished with exit code 0
2、使用append()方法
append()方法在列表的末尾添加新的對(duì)象,該方法無返回值,但是會(huì)修改原來的列表。
語法:list.append(obj)
參數(shù):obj – 添加到列表末尾的對(duì)象。
#!/usr/bin/env python # -*- coding:utf-8 -*- if __name__ == '__main__': a = [1, 2, 3] b = [4, 5, 6] a.append(b) print(a)
輸出:
[1, 2, 3, [4, 5, 6]]
Process finished with exit code 0
3、使用extend()方法
extend()方法用新列表擴(kuò)展原來的列表,會(huì)把對(duì)象迭代添加到列表后面,只支持可迭代對(duì)象的數(shù)據(jù)。(可迭代對(duì)象: 能用for循環(huán)進(jìn)行迭代的對(duì)象就是可迭代對(duì)象, 比如:字符串,列表,元組,字典,集合等等)
該方法沒有返回值,但會(huì)在已存在的列表中添加新的列表內(nèi)容。
語法:list.extend(seq)
參數(shù):seq – 元素列表。
#!/usr/bin/env python # -*- coding:utf-8 -*- if __name__ == '__main__': a = [1, 2, 3] b = [4, 5, 6] a.extend(b) print(a)
輸出:
[1, 2, 3, 4, 5, 6]
Process finished with exit code 0
4、難點(diǎn)
#!/usr/bin/env python # -*- coding:utf-8 -*- if __name__ == '__main__': a = [1, 2, 3] c = [] c.append(a) print(c) a.append(4) print(c)
輸出:
[[1, 2, 3]]
[[1, 2, 3, 4]]
Process finished with exit code 0
可以看到改變a列表以后,c列表也發(fā)生了改變。
出現(xiàn)這種現(xiàn)象的原因:因?yàn)閘ist列表使用append()方法追加時(shí),實(shí)際上是淺拷貝造成的。
解決方法:可以使用copy.deepcopy()進(jìn)行深拷貝。
#!/usr/bin/env python # -*- coding:utf-8 -*- import copy if __name__ == '__main__': a = [1, 2, 3] c = [] c.append(copy.deepcopy(a)) print(c) a.append(4) print(c)
輸出:
[[1, 2, 3]]
[[1, 2, 3]]Process finished with exit code 0
到此這篇關(guān)于python中列表添加元素的幾種方式(+、append()、extend())的文章就介紹到這了,更多相關(guān)python 列表添加元素內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python的Django REST框架中的序列化及請(qǐng)求和返回
這篇文章主要介紹了Python的Django REST框架中的序列化及請(qǐng)求和返回,使用Django REST來實(shí)現(xiàn)RESTful web service非常方便和強(qiáng)大,需要的朋友可以參考下2016-04-04ID3決策樹以及Python實(shí)現(xiàn)詳細(xì)過程
決策樹是我本人非常喜歡的機(jī)器學(xué)習(xí)模型,非常直觀容易理解,并且和數(shù)據(jù)結(jié)構(gòu)的結(jié)合很緊密,下面這篇文章主要給大家介紹了關(guān)于ID3決策樹以及Python實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2024-01-01Python初識(shí)二叉樹續(xù)之實(shí)戰(zhàn)binarytree
binarytree庫是一個(gè)Python的第三方庫,這個(gè)庫實(shí)現(xiàn)了一些二叉樹相關(guān)的常用方法,使用二叉樹時(shí),可以直接調(diào)用,不需要再自己實(shí)現(xiàn),下面這篇文章主要給大家介紹了關(guān)于Python初識(shí)二叉樹之實(shí)戰(zhàn)binarytree的相關(guān)資料,需要的朋友可以參考下2022-05-05Pytest測試報(bào)告工具Allure的高級(jí)用法
這篇文章介紹了Pytest測試報(bào)告工具Allure的高級(jí)用法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07pandas如何將表中的字符串轉(zhuǎn)成數(shù)值型
在用pd.read_csv讀數(shù)據(jù)時(shí),將要轉(zhuǎn)換數(shù)據(jù)類型的列名和類型名構(gòu)成字典,傳給dtype,怎么轉(zhuǎn)換呢,下面小編給大家分享下pandas將表中的字符串轉(zhuǎn)成數(shù)值型,感興趣的朋友一起看看吧2023-02-02python新式類和經(jīng)典類的區(qū)別實(shí)例分析
這篇文章主要介紹了python新式類和經(jīng)典類的區(qū)別,結(jié)合實(shí)例形式分析了python新式類和經(jīng)典類的功能、區(qū)別與使用方法,需要的朋友可以參考下2020-03-03Xadmin+rules實(shí)現(xiàn)多選行權(quán)限方式(級(jí)聯(lián)效果)
這篇文章主要介紹了Xadmin+rules實(shí)現(xiàn)多選行權(quán)限方式(級(jí)聯(lián)效果),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04