(以 Intellij IDEA / PyChram 為例)
??Python 作為一個自動推定類型的語言贩耐,雖然是強類型,但是很多時候厦取,變量的類型推斷是在執(zhí)行中進行的潮太,這種模式一定程度上方便了代碼的編寫,程序員不需要在每次聲明變量時還去考慮繁瑣的類型虾攻。
??不過铡买,對于 IDE 編輯器的自動補全機制來說,這未必是一個好事霎箍,因為某種意義上來說寻狂,自動補全是要根據(jù)變量類型,展示出可以使用的方法的朋沮。
??正常情況下蛇券,編譯器會根據(jù)上下文智能推斷變量的類型缀壤,但是有些情況下,比如:
這種情況主要出現(xiàn)在類庫中
??這種情況經(jīng)常出現(xiàn)在類庫中纠亚,先不管依賴自動補全是不是一個好習慣塘慕,在面對一個新庫的時候,如果沒有補全只能查文檔(很多還是英文的)蒂胞,確實挺麻煩的图呢,而且很多方法名只要懂一些簡單的英文單詞就能看懂,很多時候直接從補全的內容里面找想要的方法骗随,比查文檔方便多了蛤织。
??那么怎么解決這一問題呢,核心問題是:“編輯器不知道變量類型 ”鸿染。還好 Python3 給出了一種新特性——指定變量類型指蚜。它的寫法如下:
指定變量類型的寫法
實踐例子:
“不指定變量類型時”
“指定變量類型后”
??而一般的編輯器,只要你有該類型的一個方法就可以找到他的類型:
(如 IDEA/PyCharm):
“按住 Ctrl 涨椒,鼠標指針懸停在方法上就可以看到所屬類”
??也就是說摊鸡,你最多只需要查一次文檔即可
??這樣編輯器就能實行自動補全了,當然蚕冬,這個 指定變量類型 的新特性本身并不是為了讓編輯器自動補全免猾,而是為了讓程序員編寫方法時確定傳入的參數(shù)的數(shù)據(jù)類型是否是自己想要的,相當于類型檢查功能囤热。