1. 程式人生 > >python學習之路(四)

python學習之路(四)

[1] size class dex epc uri msu 語句 這就是

繼續昨天的學習,學到了數組。

首先有兩個數組,name1和name2.我們可以將兩個數組合並

name1=[1,2,3,4]
name2=[5,6,7,8]
names=name1.extend(name2)
print(names)

最後輸出的是[1,2,3,4,5,6,7,8],這就是在name1後面接上name2

然後來到了一個小重點,copy(復制)

這裏分為深copy和淺copy,我在學習之路(二)中說過一個復制的問題,就是在賦值的時候,值是存在內存裏面的,而不是隨著變量變化的,這裏的深淺copy也是這個道理。

用專業的話來解釋就是

1. copy.copy 淺拷貝 只拷貝父對象,不會拷貝對象的內部的子對象。
2. copy.deepcopy 深拷貝 拷貝對象及其子對象

首先,我們來了解一下淺copy。淺copy:不管多麽復雜的數據結構,淺copy都只會copy一層。

  這種情況發生在字典套字典、列表套字典、字典套列表,列表套列表,以及各種復雜數據結構的嵌套中,所以當我們的數據類型很復雜的時候,用copy去進行淺copy就要非常小心。。。例子如下

import copy
name1=[1,[2,3,4],[5,6,],7]
name2=copy.copy(name1)
name1[1][1]="9"
name1[3]=99
print(name2)
>>>輸出結果是 [1,[2,9,4],[5,6],7]

淺copy可以用於公共賬號的創建,有興趣的可以自己嘗試一下。

緊接著我們說一下深copy。深copy——即python的copy模塊提供的另一個deepcopy方法。深copy會完全復制原變量相關的所有數據,在內存中生成一套完全一樣的內容,在這個過程中我們對這兩個變量中的一個進行任意修改都不會影響其他變量

import copy
name1=[1,[2,3,4],[5,6,],7]
name2=copy.deepcopy(name1)
name1[1][1]="9"
name1[3]=99
print(name2)
>>>輸出結果是 [1, [2, 3, 4], [5, 6], 7]

還有一個知識點是元組,就是所謂的(tuple),他和列表很相像,但是元組是不能修改的,僅僅可讀。
所以元組只有兩個命令,一個是count,另一個是index

元組通過圓括號中用逗號分隔的項目定義。元組通常用在使語句或用戶定義的函數能夠安全的采用一組值的時候,即被使用的元組的值不會改變。元組可以嵌套

tuple1=[xiaoming‘,jack‘,tom]
print(tuple1.count(tom))
print(tuple1.index(tom‘))

輸出結果為1和2

今天的學習就到這裏,明天將更新字典的內容和一部分自己寫的代碼~

python學習之路(四)