Python で def func(input: int = 1 ) -> str: が型宣言、初期値割り当て済み2021年05月03日 09時49分42秒

Python での型宣言に、初期値を割り当てたときの記述式。引数は、変数名、型、初期値の順番で置く。戻り型は後置式で、矢印の後。
% cat annotations.py 
#!/usr/local/bin/python3.7

import typing

def func(input: int = 1 ) -> str:
    return str( input )

print( func.__annotations__ )
print( func() )
print( func( 3 ) )
__annotations__ に型情報が保持される。
% python3.7 annotations.py
{'input': , 'return': }
1
3
実行結果。初期値は __annotations__ には保持されないようだ。