python從入門到精通(DAY 2)
1、字典復(fù)制:
dict = {'name':'wang', 'sex':'m', 'age':34, 'job':'it'} info = dict ##別名 (二個(gè)字典指向內(nèi)存的同一地址空間) info1 = dict.copy() #shadow copy 淺復(fù)制(嵌套字典第一層獨(dú)立,第二層以下相關(guān)聯(lián)) import copy copy.copy() #shadow copy 淺復(fù)制 copy.deepcopy() #deep copy 深復(fù)制(完全獨(dú)立)
注:淺復(fù)制下的關(guān)聯(lián)只是針對(duì)字典初始狀態(tài)包含的嵌套對(duì)象,后新加的不會(huì)
例:
>>> dict {'info': ['a', 'b', 1, 2], 'job': 'it', 'sex': 'm', 'age': 40, 'name': 'wang'} >>> dict_alias = dict >>> dict_copy = copy.copy(dict) >>> dict_deep = copy.deepcopy(dict)
#添加、改變、刪除第一層的對(duì)象鍵值,淺復(fù)制和深復(fù)制都不受影響
>>> dict['age'] = 32 >>> del dict['sex'] >>> dict {'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 32, 'name': 'wang'} >>> dict_alias {'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 32, 'name': 'wang'} >>> dict_copy {'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'} >>> dict_deep {'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}
#改變、刪除原有的第二層的對(duì)象鍵值,淺復(fù)制受影響,而深復(fù)制都不受影響
>>> dict['info'][2] = 100 >>> dict {'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 32, 'name': 'wang'} >>> dict_alias {'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 32, 'name': 'wang'} >>> dict_copy {'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'} >>> dict_deep {'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}
#添加第二層的對(duì)象,淺復(fù)制和深復(fù)制都不受影響
>>> dict['new'] = {'a':1, 'b':2, 'c':5} >>> dict {'info': ['a', 'b', 100, 2], 'name': 'wang', 'age': 32, 'job': 'it', 'new': {'a': 1, 'c': 5, 'b': 2}} >>> dict_alias {'info': ['a', 'b', 100, 2], 'name': 'wang', 'age': 32, 'job': 'it', 'new': {'a': 1, 'c': 5, 'b': 2}} >>> dict_copy {'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'} >>> dict_deep {'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}
2、內(nèi)置函數(shù)說明:
__name__:主文件時(shí)返回main,否則返回文件名,可用來判斷是否說主文件還是導(dǎo)入模塊;
__file__:文件的絕對(duì)路徑;
__doc__:文件開頭的注釋說明
例:
''' created by 2015-12-18 @author: kevin ''' if __name__ == '__main__': print('this is main file') print(__file__) print(__doc__)
相關(guān)文章
python程序主動(dòng)退出進(jìn)程的五種方式
對(duì)于如何結(jié)束一個(gè)Python程序或者用Python操作去結(jié)束一個(gè)進(jìn)程等,Python本身給出了好幾種方法,而這些方式也存在著一些區(qū)別,對(duì)相關(guān)的幾種方法看了并實(shí)踐了下,同時(shí)也記錄下,需要的朋友可以參考下2024-02-02python打開url并按指定塊讀取網(wǎng)頁(yè)內(nèi)容的方法
這篇文章主要介紹了python打開url并按指定塊讀取網(wǎng)頁(yè)內(nèi)容的方法,涉及Python操作URL及網(wǎng)頁(yè)內(nèi)容的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04python實(shí)現(xiàn)二次元圖片展示(屏保)
這篇文章主要介紹了python實(shí)現(xiàn)二次元圖片展示,用了API端口相關(guān)的知識(shí)實(shí)現(xiàn),下面詳細(xì)的文章內(nèi)容需要的小伙伴可以參考一下2022-02-02python爬蟲設(shè)置每個(gè)代理ip的簡(jiǎn)單方法
在本篇文章里小編給大家整理了一篇關(guān)于python爬蟲設(shè)置每個(gè)代理ip的簡(jiǎn)單方法,有興趣的朋友們可以學(xué)習(xí)參考下。2021-08-08Python實(shí)現(xiàn)自動(dòng)化郵件發(fā)送過程詳解
這篇文章主要介紹了如何利用Python實(shí)現(xiàn)自動(dòng)化郵件發(fā)送,可以讓你擺脫繁瑣的重復(fù)性業(yè)務(wù),可以節(jié)省非常多的時(shí)間。感興趣的小伙伴可以試一試2022-01-01