Python從技術上來說有以下幾方面的優點: (1)面向對象:它的類模塊支持多態、操作符重載和多重繼承等高級概念,並且以Python特有的簡潔的語法和類型,OOP十分適用。就像C++一樣,Python既支持面向對象編程又支持面向過程編程的模式 (2)免費:Python的使用和分發是完全免費的; (3 ...
Python從技術上來說有以下幾方面的優點:
(1)面向對象:它的類模塊支持多態、操作符重載和多重繼承等高級概念,並且以Python特有的簡潔的語法和類型,OOP十分適用。就像C++一樣,Python既支持面向對象編程又支持面向過程編程的模式
(2)免費:Python的使用和分發是完全免費的;
(3)可移植:Python的標準實現是由可移植的ANSIC編寫的,可以再目前所有主流平臺上編譯和運行。
(4)功能強大:從特性的觀點來看,Python是一個混合體。他豐富的工具集使他介於傳統的腳本語言和系統語言之間。Python提供了所有腳本語言的簡單和易用行,並且具有在編譯語言中才能找到的高級軟體工程工具。
動態類型:Python在運行過程中隨時跟蹤對象的種類,不需要代碼中關於複雜的類型和大小的聲明。Python中沒有類型或變數聲明這回事,因為Python代碼不是約束數據的類型,他往往自動地應用了一種廣義上的對象。
自動記憶體管理:Python自動進行對象分配,當對象不再使用時將自動撤銷對象(“垃圾回收”),當需要時自動擴展或收縮。Python能夠代替你進行底層的記憶體管理。
大型程式支持:Python包含了模塊、類和異常等工具,這些工具允許把系統組織為組件,使用OOP重用並定製代碼,並以一種優雅的方式處理事件和錯誤。
內置對象和類型:Python提供了常用的數據結構作為語言的基本組成部分。
(5)可混合:Python程式可以以多種方式輕易地與其它語言編寫的組件“粘結”在一起。
(6)簡單易用:運行Python程式,只需要簡單地鍵入Python程式並運行就可以了,不需要其它語言所必須的編譯和鏈接等中間步驟。
(7)簡單易學
Python對象的拷貝
import copy
books=["Linux伺服器架設",["Linux基礎學習","zabbix監控搭建"],"docker架構"]
books3=books.copy()
print(books)
print(books3)
books[1][0]="ansible權威指南"
print(books)
print(books3)
a=1
b=a
print(a,b)
print(a==b)
print(a is b)
a=2
print(a==b)
print(a is b)
print(a,b)
c="abc"
d=copy.copy(c)
print(c==d)
print(c is d)
print(c,d)
#深拷貝其實就是父類和子類都拷貝,拷貝的是值而不是引用,記憶體地址不同。
e=[1,[2,3],4]
f=copy.deepcopy(e)
print("e==f?",e==f)
print("e is f",e is f)
print(e)
print(f)
print(id(e))
print(id(f))
e[1][0]=22
print("e==f?",e==f)
print("e is f",e is f)
print(e)
print(f)
print(id(e))
print(id(f))
#複製語句其實就是淺拷貝,實際上就是對象的引用,指向同一個對象;操作的都是同一塊記憶體地址
g=[5,[6,7],8]
h=g
print("g==h?",g==h)
print("g is h",g is h)
print(g)
print(h)
g[1][0]=66
print("g==h?",g==h)
print("g is h",g is h)
print(g)
print(h)
print(id(g))
print(id(h))