Si j'ai une fonction comme ceci:
def foo(name, opts={}):
pass
Et je veux ajouter un type de conseils pour les paramètres, comment dois-je faire? La façon dont j'ai supposé me donne une erreur de syntaxe:
def foo(name: str, opts={}: dict) -> str:
pass
Les éléments suivants ne jette pas une erreur de syntaxe, mais il ne semble pas que cette façon intuitive pour gérer ce cas:
def foo(name: str, opts: dict={}) -> str:
pass
Je ne peux pas trouver quelque chose dans l' typing
de la documentation ou sur une recherche Google.
Edit: je ne savais pas comment les arguments par défaut travaillé en Python, mais pour les besoins de cette question, je vais garder les exemples ci-dessus. En général, il est beaucoup mieux de faire ce qui suit:
def foo(name: str, opts: dict=None) -> str:
if not opts:
opts={}
pass