python從入門到精通(DAY 2)
更新時間:2015年12月20日 10:29:35 投稿:hebedich
本文是python從入門到精通系列文章的第二篇,主要給大家簡單講解下Python的字典復制和內(nèi)置函數(shù),非常簡單實用,需要的小伙伴可以參考下
1、字典復制:
dict = {'name':'wang', 'sex':'m', 'age':34, 'job':'it'}
info = dict ##別名 (二個字典指向內(nèi)存的同一地址空間)
info1 = dict.copy() #shadow copy 淺復制(嵌套字典第一層獨立,第二層以下相關聯(lián))
import copy
copy.copy() #shadow copy 淺復制
copy.deepcopy() #deep copy 深復制(完全獨立)
注:淺復制下的關聯(lián)只是針對字典初始狀態(tài)包含的嵌套對象,后新加的不會
例:
>>> 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)
#添加、改變、刪除第一層的對象鍵值,淺復制和深復制都不受影響
>>> 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'}
#改變、刪除原有的第二層的對象鍵值,淺復制受影響,而深復制都不受影響
>>> 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'}
#添加第二層的對象,淺復制和深復制都不受影響
>>> 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__:主文件時返回main,否則返回文件名,可用來判斷是否說主文件還是導入模塊;
__file__:文件的絕對路徑;
__doc__:文件開頭的注釋說明
例:
'''
created by 2015-12-18
@author: kevin
'''
if __name__ == '__main__':
print('this is main file')
print(__file__)
print(__doc__)
相關文章
python打開url并按指定塊讀取網(wǎng)頁內(nèi)容的方法
這篇文章主要介紹了python打開url并按指定塊讀取網(wǎng)頁內(nèi)容的方法,涉及Python操作URL及網(wǎng)頁內(nèi)容的技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04

