我最近開始學習使用Python編程,在一些來源中,我遇到了代碼:def f(x : int) -> str:或def f(x):
"""(int) -> str...."""當我嘗試第一個代碼時,它似乎沒有限制函數的輸入或輸出。這是否意味著它們是為了代碼清晰,并且它們中的任何一個的使用取決于個人喜好,還是我錯過了什么?
1 回答

泛舟湖上清波郎朗
TA貢獻1818條經驗 獲得超3個贊
這是否意味著它們是為了代碼清晰
是的,鍵入提示代碼通常更易于閱讀和理解。
您還可以使用第三方工具來檢查您的代碼。您可以使用兩種工具:mypy和pye。
如果您有一個名為 的模塊:example.py
def foo(bar: int) -> str:
return str(bar)
foo("hello, world")
foo(1)
foo(b'\x00')
你可以像這樣檢查它:
$ mypy example.py
example.py:5: error: Argument 1 to "foo" has incompatible type "str"; expected "int"
example.py:7: error: Argument 1 to "foo" has incompatible type "bytes"; expected "int"
Found 2 errors in 1 file (checked 1 source file)
添加回答
舉報
0/150
提交
取消