Str.format() déclenche KeyError
Le code suivant déclenche une exception KeyError
:
addr_list_formatted = []
addr_list_idx = 0
for addr in addr_list: # addr_list is a list
addr_list_idx = addr_list_idx + 1
addr_list_formatted.append("""
"{0}"
{
"gamedir" "str"
"address" "{1}"
}
""".format(addr_list_idx, addr))
Pourquoi?
J'utilise python 3.1.
50
demandé sur
dreftymac
2010-05-03 02:06:31
1 réponses
Le problème est les caractères {
et }
que vous avez là qui ne spécifient pas de clé pour le formatage. Vous devez les doubler, alors changez votre code en:
addr_list_formatted.append("""
"{0}"
{{
"gamedir" "str"
"address" "{1}"
}}
""".format(addr_list_idx, addr))
91
répondu
Lasse Vågsæther Karlsen
2018-03-30 16:41:11