以下代码引发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))
为什么?
我正在使用Python 3.1。
答案 0 :(得分:106)
问题是那里的{
和}
字符没有指定格式化键。您需要将它们加倍,因此请将代码更改为:
addr_list_formatted.append("""
"{0}"
{{
"gamedir" "str"
"address" "{1}"
}}
""".format(addr_list_idx, addr))