Jika saya memiliki fungsi seperti ini:
def foo(name, opts={}):
pass
Dan saya ingin menambahkan petunjuk tipe ke parameter, bagaimana saya melakukannya? Cara saya berasumsi memberi saya kesalahan sintaks:
def foo(name: str, opts={}: dict) -> str:
pass
Berikut ini tidak menimbulkan kesalahan sintaksis tetapi sepertinya bukan cara intuitif untuk menangani kasus ini:
def foo(name: str, opts: dict={}) -> str:
pass
Saya tidak dapat menemukan apa pun di typing
dokumentasi atau pencarian Google.
Sunting: Saya tidak tahu bagaimana argumen default bekerja di Python, tetapi demi pertanyaan ini, saya akan menyimpan contoh di atas. Secara umum jauh lebih baik untuk melakukan hal berikut:
def foo(name: str, opts: dict=None) -> str:
if not opts:
opts={}
pass
scala
halnya dengan bahasa.