一篇文章教會你什么是Python模仿強類型
回復“書籍”即可獲贈Python從入門到進階共10本電子書
前言
??? Hi,各位小伙伴,你們好,今天我們來說一個Python未來趨勢的并且一個好玩的東西。
????我們可能多多少少都聽過一句話,動態(tài)一時爽,重構火葬場。從生產(chǎn)角度出發(fā),Python確實是一門很優(yōu)秀的語言,但是當多人協(xié)作時,或者接手別人Python代碼時,估計是有些頭疼的。
????Python雖然生產(chǎn)力高,語法強大,具備動態(tài)語言的靈活性,但是也正是因為這樣,估計每個人寫的代碼有很大差別,那有沒有什么辦法盡可能的避免這種情況呢?
????關于這個,Python前輩也發(fā)現(xiàn)這個弊病,所以,在Python3.6之后,推出了"Python類型注釋"。
????來吧,各位,上車吧,我們一起看一下。
環(huán)境
Python解釋器 3.6+????關于Python版本,盡可能的選擇Python3.6+,因為在Python3.6+之后,在Python的異步徹底崛起,雖然目前處于測試階段,但是我相信,用不了多久,Python一定會更加優(yōu)秀。
一個簡單的例子
def speak(name,age):print(name,age)speak("張三","18")
????我們可以很清晰的知道,speak函數(shù)的name參數(shù),接收的一定是個字符串,并且以后我也希望它接收的一直是字符串,傳統(tǒng)的寫法如上,當然,現(xiàn)在我也是這么寫,畢竟我太賴了。
????但是現(xiàn)在有個很簡單的需求,我想把name接收的參數(shù)都轉(zhuǎn)成大寫,so,我們都知道字符串有upper方法。
print("stark".upper())????但是當我們敲“.”符號的時候,有時候可能并不會出現(xiàn)自動提示,但是name確實是字符串。
????注:Pycharm可能會提示出來,但是有時候會失敗,這要歸功于Pycharm強大的提示功能,但并不是萬能的,如下圖所示。

????這很正常,因為Python是動態(tài)語言,變量什么類型只有解釋到才知道。
????我們將代碼稍微改一下,如下圖所示。

????我們在參數(shù)后面加上:str,就表示我希望我接收的參數(shù)類型是字符串,如果我傳的是數(shù)字類型,如下圖所示。

??? Pycharm or Vscode出現(xiàn)飄黃警告,如下圖所示。

????期望的類型'str',得到卻是'int'。
????并且在敲入點號的時候,只要是主流的編輯器,都會自動提示,如下圖所示。

聲明簡單類型
常用幾種

不管是函數(shù)參數(shù)還是聲明變量,都是:類型
更多類型
Lists

Dicts

類

+和不+類型注釋的效果
下圖是+類型注釋的效果:

下圖是不+類型注釋的效果:

函數(shù)

感言
????以上只是簡單的寫了一下入門常用的一些類型注釋,個人認為基本夠用。
????小編相信,有人一定會說,這樣寫和靜態(tài)語言有什么區(qū)別或者說這樣寫畢竟累,并且復雜,但是有些付出是必須的,畢竟開發(fā)軟件不是一個人在開發(fā),并且新庫和新項目已經(jīng)陸陸續(xù)續(xù)在使用以上方法,相信普及是個時間問題。
????類型注釋不僅方便自己觀看以前的代碼,也方便別人閱讀自己的代碼,小編認為很有必要學習一下。
????想學習更多關于Python的知識,可以參考學習網(wǎng)址:http://pdcfighting.com/
-------------------?End?-------------------
往期精彩文章推薦:

歡迎大家點贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學習群請在后臺回復【入群】
萬水千山總是情,點個【在看】行不行
/今日留言主題/
隨便說一兩句吧~~
