Je souhaite renvoyer la valeur par défaut lorsqu'une valeur qui n'est pas dans le dictionnaire est entrée.
Je ne connais pas le nom exact de la valeur par défaut, mais si vous mettez =
après l'argument, il utilisera cette valeur lorsque l'argument de fonction n'est pas donné.
Arguments par défaut de la fonction
def func(arg1):
print(arg1)
# $ func() #Provoque une erreur s'il n'y a pas d'argument
# [Out]
# ---------------------------------------------------------------------------
# TypeError Traceback (most recent call last)
# <ipython-input-6-08a2da4138f6> in <module>()
# ----> 1 func()
# TypeError: func() missing 1 required positional argument: 'arg1'
def func(arg1=0): #S'il y a un argument par défaut, il utilisera automatiquement l'argument par défaut même s'il n'y a pas d'argument
print(arg1)
# $ func()
# [Out] # 0
Comme cet argument par défaut dans le dictionnaire
Dans ce cas, utilisez la méthode get.
get method docstring
dict.get? Docstring: D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None.
dict.méthode get
dic={'a':6,'b':4}
# $ dic['a']
# 6
# $ dic['b']
# 4
# $ dic['c'] #Erreur si une valeur qui n'est pas dans la clé est entrée
# ---------------------------------------------------------------------------
# KeyError Traceback (most recent call last)
# <ipython-input-11-0c3be353eb91> in <module>()
# ----> 1 ic['c']
# KeyError: 'c'
$ dic.get('c',0) #En dic'c'Le deuxième argument est renvoyé car il n'y a pas
# [Out] # 0
De plus, si le deuxième argument n'est pas spécifié pour get
, None
est renvoyé.
Référence: Renvoyer Aucun si la clé de dictionnaire n'est pas disponible
Recommended Posts