1. 程式人生 > >洗禮靈魂,修煉python(16)--列表進階話題—>上節作業講解+copy模塊

洗禮靈魂,修煉python(16)--列表進階話題—>上節作業講解+copy模塊

ima 參數 span 分片 斐波那契數 介紹 生成器 strong 列表解析

上節課後作業:

1.使用列表解析輸出結果:[(0,0),(0,2),(2,0),(2,2)]

方法1:

技術分享

方法2:

技術分享

方法3:

技術分享

2.使用列表生成器打印斐波那契數列

技術分享

3.使用列表解析生成列表[1x2,3x4,5x6,7x8,…,99x100]

技術分享

4.利用3層for循環的列表生成式,找出對稱的3位數,例如:121等從左到右從又到左還是原來的對稱數

技術分享

5.編寫一個函數,它接受一個list,然後把list中的所有字符串變成大寫後返回,非字符串元素將被忽略

如果按照平常寫法是這樣:

技術分享

按照列表解析就簡單很多:

技術分享

註意,此時並沒有對原列表更改

copy模塊:

1.什麽是copy

前面在列表分片的時候稍微提了一下關於拷貝(復制),在這一章將詳細介紹關於拷貝的copy模塊

2.作用

做數據備份,稍微了解運維的都應該聽過完全備份和增量備份吧?其實這裏就使用了拷貝,所以在實際運用中,拷貝是很常用的

3.函數(方法):

技術分享

看到這些方法,其實相比於前面的,其實並不多對吧?忽略帶有特殊功能的方法,其實也就幾個對吧?

然而這個模塊最常用的就是copy和deepcopy方法,其他基本很少用,所以直接略過

copy:這個方法就是簡單意義上的拷貝,和常識裏的拷貝差不多,它又另一個名稱叫【淺拷貝】(或者淺復制),換句話就是對父類對象引用的拷貝

例:

技術分享

deepcopy:這個方法就厲害了,這個比淺拷貝更牛一點,被叫做深拷貝(或深復制),換句話就是對對象的資源的拷貝

技術分享

總結:

淺拷貝就是對原對象最外層的復制,如果有內層則是直接的引用

深拷貝是對原對象整個參數資源的復制,不管有內層與否,已經和原對象毫無關系

其實是不是很簡單?那麽如果你還沒懂,自己多練習

洗禮靈魂,修煉python(16)--列表進階話題—>上節作業講解+copy模塊