增強函式的注釋功能
函式注釋包括:
函式物件有乙個屬性為
__annotations__ ,它是乙個對映(dict),作用是將每個引數名對映到其相關的注釋
注意:對映中有乙個特殊的key叫做return ,僅當函式的返回值提供注釋時,才會顯示該key。只所以選擇return,是因為他不會與任何引數名衝突,return是python的乙個關鍵字,任何使用return作為引數名的嘗試都會引發syntaxerror
def
test
(a: int, b: int) -> int:
print(test.__annotations__)
return a+b
>>> print(test(1, 2))
3另外,給引數增加注釋還有乙個比較使用的功能,增加**提示
如果指定函式注釋和實際使用不一致會怎樣?
此時,雖然開發工具裡面會報錯,提示輸入的資料型別不對,但是程式照樣正常執行,不會拋異常
Python3(高階特性)
1.例題答案 小寫化含有數字的list l2 s.lower for s in l1 if isinstance s,str true l2.insert key,value for key,value in enumerate l1 if isinstance value,int true l2注...
Python3 高階特性
可迭代物件 集合資料型別 list tuple dict set str generator,包括生成器和帶yield的generator function 可以採用collections模組的iterable型別判斷是否是可迭代物件 from collections import iterable...
Python3的新改動
最近在學python,看的書是2.x的,電腦上裝的是python3,發現蠻多的改動。這篇文章主要介紹了相比於python2.6,python3.0的新特性。更詳細的介紹請參見python3.0的文件。common stumbling blocks 本段簡單的列出容易使人出錯的變動。string an...