python 3のtypingモジュールを使用してコードの堅牢性を向上
12581 ワード
転自:職人123
python 3のtypingモジュールを使用してコードの堅牢性を向上前言:多くの人がコードを書き終わってからコードを振り返ると、自分が書いた関数がどんなパラメータを伝える必要があるのか、どんなタイプの結果を返す必要があるのかを忘れてしまう可能性があります.コードの具体的な内容を読まなければなりません.読むスピードを下げ、Python自体が弱いタイプの言語であることを加えると、このような現象はさらに深刻になります.typingというモジュールはこの問題をよく解決した. typingモジュールの役割: タイプチェックで、実行時にパラメータと戻り値タイプが一致しないようにします. は、開発ドキュメントの追加説明として、ユーザが呼び出したときにパラメータタイプを入力および返すのを容易にする. このモジュールが追加された後、プログラムの実行に影響を与えることはなく、正式なエラーは報告されず、注意するしかありません.
python 3のtypingモジュールを使用してコードの堅牢性を向上
:typing python3.5 ,pycharm typing
- 下面说说typing模块常用的方式:
-
from typing
import List, Tuple, Dict
-
def add(a:int, string:str, f:float, b:bool) -> Tuple[List, Tuple, Dict, bool]:
-
list1 = list(range(a))
-
tup = (string, string, string)
-
d = {
"a":f}
-
bl = b
-
return list1, tup, d,bl
-
print(add(
5,
"hhhh",
2.3,
False))
-
# :([0, 1, 2, 3, 4], ('hhhh', 'hhhh', 'hhhh'), {'a': 2.3}, False)
-
:
-
“ : ” ;
-
"-> " 。
-
pycharm , 。
-
list , , :“-> List[str]”, , 。
-
python , , :
-
from typing
import List
-
def func(a:int, string:str) -> List[int or str]:
-
list1 = []
-
list1.append(a)
-
list1.append(string)
-
return list1
-
-
# or
-
typing :
- int,long,float: , , ;
- bool,str: , ;
- List, Tuple, Dict, Set: , , , ;
- Iterable,Iterator: , ;
-
Generator: ;