嗨,我在python上很新,所以如果我问非常愚蠢的问题,请求原谅。所以,我有一个名为array的字典有一些值,现在我想把键作为一个变量输入,然后使用它来打印分配给该键的值。
array = {'color':'blue' , 'size':'small'}
print array ['color']
这很好用,输出值为蓝色。但如果我尝试这个就行不通。
array = {'color':'blue' , 'size':'small'}
var = input ('input a key') #input would be " color " or " size "
print array[var]
我认为这有一个非常简单的解决方案。感谢提前帮助:)
答案 0 :(得分:2)
您的输入具有前导和尾随空格。例如,' color '
与'color'
不同。您的词典没有键' color '
。您可以strip
输入字符串中的空格,如下所示:
>>> mydict = {'color':'blue' , 'size':'small'}
>>> var = input().strip()
' color '
>>> mydict[var]
'blue'
顺便说一下,你的array
是一个Python字典,称它为数组有点令人困惑。
答案 1 :(得分:2)
要避免KeyError异常,可以使用get:
>>> mydict = {'color':'blue' , 'size':'small'}
>>> var = input().strip()
' color '
>>> mydict.get(var, 'Not Found')
答案 2 :(得分:0)
谢谢你们,我最终得到它的工作:)
mydict = {'color':'blue' , 'size':'small'}
var =str( raw_input ('input a key'))
print mydict[var]
似乎我只需要获取原始输入并将其转换为字符串