翻了翻httprunner的源代碼,越看越不對勁,感覺有點看不懂語法了。
這都什么鬼?感覺心好慌,頓時感到慚愧萬分,還好意思說自己了解Python呢。
趕緊了解一下,原來這叫 type hints,是python3.5時候新增的一個特性。
函數里參數后的冒號其實是參數的類型建議,但是只是建議,就算你不按約定傳也不會報錯。
而后面的箭頭,則是函數返回值的類型建議。
舉個栗子:
def demo(a, b):
c = a + b
return c
if __name__ == '__main__':
print(demo(1, 2))
運行的結果為3。
這時候,我也可以這樣寫:
def demo(a: int, b: int) -> "int":
c = a + b
return c
if __name__ == '__main__':
print(demo(1, 2))
運行結果,仍然為3。
當然了,我不按建議的類型傳參也可以,比如:
def demo(a: int, b: int) -> "int":
c = a + b
return c
if __name__ == '__main__':
print(demo("你", "好"))
運行結果:你好。
我覺得這個特性有利於讓Python工程更加的規范,因為一個大工程的話,往往需要多人協助完成,這樣的話可以讓代碼的可讀性更強。