python 列表複製

2021-08-14 23:21:05 字數 1150 閱讀 5372

我們經常需要根據已有列表來建立全新的列表,下面來介紹列表複製的工作原理。

<1>原理

要複製列表,首先需要建立乙個包含整個列表的切片,方法是同時省略起始和終止索引([:]),即讓python建立乙個始於第乙個元素,終止於最後乙個元素的切片,便可複製整個切片。

例:將『myfoods』複製給『friendfoods』。

#copy list1

myfoods=['rice','water','meat']

friendfoods=myfoods[:]

print('myfoods:')

print(myfoods)

執行結果:
myfoods:

['rice', 'water', 'meat', 'ice-cream']

friendfoods:

['rice', 'water', 'meat', 'fruit']

注意:關鍵一步為

friendfoods=myfoods[:]
<2>注意

若將

friendfoods=myfoods[:]
改為
friendfoods=myfoods
則整個程式變為:

#copy list2

myfoods=['rice','water','meat']

friendfoods=myfoods

print('myfoods:')

print(myfoods)

則執行結果為:
myfoods:

['rice', 'water', 'meat', 'ice-cream', 'fruit']

friendfoods:

['rice', 'water', 'meat', 'ice-cream', 'fruit']

可發現,對myfoods和friendfoods的操作同時增加了二者的列表元素,說明方法二是將myfoods的位址傳遞給了friendfoods(即關聯到了一起),所以改變列表一的值也會改變列表二。而方法一是將myfoods的副本傳遞給了friendfoods,二者在第一次複製完後,不再相互干擾,乾乾淨淨清清爽爽。

python列表複製

我想實現乙個列表複製的操作,於是我就寫下了下面的 list 2 list 1 print list 2 print list 1 結果卻是這個樣子滴 banana berry banana berry 於是乎,我發現了乙個問題,list 2 list 1這樣寫並不是真正的列表複製,而是list 2 ...

python 複製列表內容 Python 複製列表

python 複製列表 定義乙個列表,並將該列表元素複製到另外乙個列表上。def clone test li1 li copy li1 return li copy li1 4,8,2,10,15,18 li2 clone test li1 print 原始列表 li1 print 複製後列表 li...

Python列表複製操作

引用是指儲存的值為物件的位址。在 python 語言中,乙個變數儲存的值除了基本型別儲存的是值外,其它都是引用,因此對於它們的使用就需要小心一些。下面舉個例子 問題描述 已知乙個列表,求生成乙個新的列表,列表元素是原列表的複製 a 1,2 b a這種做法其實並未真正生成乙個新的列表,b指向的仍然是a...