Python:在双键字典中更改值

Rad*_*ead 0 python

所以我要做的是制作人员及其信息的字典,但我想用他们的名字作为主键,并让他们的信息的每一部分也有一把钥匙.我无法弄清楚如何改变他们个人信息的价值.我甚至不确定我是否正确的方法这里是代码.

name = raw_input("name")
age = raw_input("age")
address = raw_input("address")
ramrod = {}

ramrod[name] =  {'age': age}, {'address' : address}

print ramrod

#prints out something like this: {'Todd': ({'age': '67'}, {'address': '55555 FooBar rd'})}
Run Code Online (Sandbox Code Playgroud)

Gar*_*tty 6

你要找的是一个简单的嵌套字典:

>>> data = {"Bob": {"Age": 20, "Hobby": "Surfing"}}
>>> data["Bob"]["Age"]
20
Run Code Online (Sandbox Code Playgroud)

字典不是一对 - 您可以在字典中存储多个项目.因此,您需要一个包含从名称到信息的映射的字典,其中信息是一个字典,其中包含从您要存储的有关该人员信息的信息名称到该信息的映射.

请注意,如果您有与数据关联的行为,或者您最终使用了大量字典,则类可能更合适:

class Person:
    def __init__(self, name, age, hobby):
        self.name = name
        self.age = age
        self.hobby = hobby

>>> data = {"Bob": Person("Bob", 20, "Surfing")}
>>> data["Bob"].age
20
Run Code Online (Sandbox Code Playgroud)