Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 如何从字典中调用字典中的特定值?_Python 2.7 - Fatal编程技术网

Python 2.7 如何从字典中调用字典中的特定值?

Python 2.7 如何从字典中调用字典中的特定值?,python-2.7,Python 2.7,目前,我正在尝试编写代码,可以为某些操作选择特定值或聚合值。我正在为此使用嵌套字典,但调用嵌套字典的特定值时遇到问题。代码运行,但总是带来相同的值,不管我最初试图调用哪个键 我试图让它打印一个变量集,设置为字典中键的值。我还尝试使用v.get()从字典中检索值 properties={'lake':{'repairs':9001,“升级”:3,“警察调查”:69} ,'meadow':{'repairs':3,'upgrades':8} ,'beach':{'repairs':4,'upgrad

目前,我正在尝试编写代码,可以为某些操作选择特定值或聚合值。我正在为此使用嵌套字典,但调用嵌套字典的特定值时遇到问题。代码运行,但总是带来相同的值,不管我最初试图调用哪个键

我试图让它打印一个变量集,设置为字典中键的值。我还尝试使用v.get()从字典中检索值

properties={'lake':{'repairs':9001,“升级”:3,“警察调查”:69}
,'meadow':{'repairs':3,'upgrades':8}
,'beach':{'repairs':4,'upgrades':2}
,'country':{'repairs':5,'upgrades':54}
choice=raw_input('您想了解特定属性还是总体操作?(特定类型或总体类型)'
choice=choice.lower()
如果选项[0]=“s”:
对于properties.items()中的k,v:
打印(properties.keys())
properti=raw_input('您希望查看哪个属性?(不输入任何内容以退出)'))
打印属性[属性]
action=raw_input('您想了解什么操作?')
结果=v[动作]
打印(“+properti+”属性已完成“+str(结果)+”“+action+”)
我希望当我要求一个特定的财产,选择湖,然后选择维修,我会得到9001。甚至去草地,我会得到3次修理。目前,我一直在获得乡村房产的维修和升级费用。

更改以下内容

result=v[action]


非常感谢。它起作用了,但你能解释一下原因吗?我大约2个月前才开始编写代码,上周才开始使用字典。让我试试看,通过
result=v[action]
您将从当前迭代中获取值,而不是从所选属性中获取值。假设for循环在迭代
k='lake',v={'repairs':9001,'upgrades':3,'police investments':69}
处,并且您输入属性的国家/地区和修复操作,
v[action]
将给出来自当前迭代的9001,而不是5,而您需要获取所选属性的值,即国家/地区的值。因此
result=properties[properti][action]
转换为
result=properties['country']['repairs']
。希望我足够清楚。啊!我以为会是那样的,但这是有道理的。非常感谢。
result=properties[properti][action]