import sys
lijst_salades = {'Eiersalade' : 5.99,
'Paprikasalade' : 6.05,
'truffelsalade': 3.99
}
input = (sys.stdin.readline())
print(lijst_salades[input])
它给我一个错误
追踪(最近一次通话):文件“ C:/some/random/dir/right/here/progr.py”,第9行,在print(lijst_salades [input])KeyError:'truffelsalade \ n'
有人可以解释哪里做错了吗?如果我使用print(lijst_salades['Eiersalade']
,则效果很好。
\n
字符,作为错误状态:KeyError:'truffelsalade \ n'
您应将代码修复为:
import sys
lijst_salades = {'Eiersalade' : 5.99,
'Paprikasalade' : 6.05,
'truffelsalade': 3.99
}
input = (sys.stdin.readline()).rstrip()
print(lijst_salades[input])
此外,建议在输入中添加测试,因为如果键不存在,它也会引发KeyError
类型的错误。编辑
您可以通过以下链接了解转义字符:https://linuxconfig.org/list-of-python-escape-sequence-characters-with-examples