Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.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 使用用户输入填写词典的说明_Python_Dictionary_User Input - Fatal编程技术网

Python 使用用户输入填写词典的说明

Python 使用用户输入填写词典的说明,python,dictionary,user-input,Python,Dictionary,User Input,我能解释一下代码响应[名称]=response?我真的不明白那一行是如何在字典中存储用户输入的。(如果这就是代码看起来奇怪的原因,那么这是Python速成教程的练习。) responses是字典。当您在while循环中循环时,名称将作为键存储在字典中,响应将作为值存储。所以基本上这个 responses[name] = response 就是说,在循环的每次迭代中,取给定的名称,将其存储为键,取响应并将其存储为值。字典本身就是一种将键分配给项目的方法,然后可以使用这些键查找项目。简单地说,这就

我能解释一下代码
响应[名称]=response
?我真的不明白那一行是如何在字典中存储用户输入的。(如果这就是代码看起来奇怪的原因,那么这是Python速成教程的练习。)


responses
是字典。当您在
while
循环中循环时,
名称将作为键存储在字典中,
响应将作为值存储。所以基本上这个

responses[name] = response

就是说,在循环的每次迭代中,取给定的
名称
,将其存储为键,取
响应
并将其存储为值。

字典本身就是一种将键分配给项目的方法,然后可以使用这些键查找项目。简单地说,这就像是一个住址。地址是房子的标识

让我们看一些代码,以分解
responses[name]=response

从一本空字典开始

responses={}

看字典里的键

responses.keys()

dict_键([])

我们可以看到没有键(或前面示例中的地址),因为它返回空列表
[]

如何向已经存在的字典添加密钥?一个选项是使用括号语法添加它

在本例中,我们将添加密钥(或地址)
'123 main street'
,这是一个字符串,值为
'Our Nice Private Home'
,这也是一个字符串

responses['123 main street]=“我们美好的私人住宅”

现在钥匙看起来像什么

responses.keys()

录音键(['123大街])

您可以看到“123 main street”键已添加到字典中

在您的示例中,
responses[name]=response


response
是字典,
name
包含用户在提示后输入的内容
你叫什么名字?
response
包含用户在提示后输入的内容
你有一天会爬哪座山?

你很不清楚自己在想什么。这就是设置dictionary元素的语法。如果你对此不确定,也许你需要多读一点。有什么不知道的?它将键
name
分配给dict
responses
中的值
response
。你还没有学过口授吗?如果没有,您可以查看。谢谢,我想我现在就知道了。等等,如果输入的名称是john,mountain是珠穆朗玛峰,它会将john作为键,将response作为值存储在responses dictionary中吗?@Arekusandaa是的,这是正确的。您可以打开一个python解释器,初始化一个空字典,并在那里试验代码。复制/粘贴到解释器中:
d={};name=“Jacob”;response=“Eyjafjällajökull”;d[名称]=响应;打印(d)
。这也许可以解释它的工作原理。@HampusLarsson是的,这更好地解释了它。因此,在您创建的示例中,它是否创建了一个名为d的字典、一个名为jacob的字符串和一个名为Eyjafjällajökull的字符串。然后,它会将雅各布作为字典d中的键,将埃亚菲亚·阿拉杰·库尔作为值。然后它会打印{'Jacob':'Eyjafjällajökull'}。如果是这样的话,那就谢谢你了。@Arekusanda完全正确。是的,非常感谢!我想我只是有一个大脑放屁,一秒钟都听不懂。所以,如果输入的名字是约翰,回答是珠穆朗玛峰,那么关键是“约翰”和“珠穆朗玛峰”的值。那么在最后一行,它会打印约翰想攀登珠穆朗玛峰吗?如果是这样,那就非常感谢!确切地当调用响应中的名称、响应时,他们正在进行一些复杂的元组解压。items():
,但听起来您似乎理解这一部分。如果是希腊语。我建议用谷歌搜索“python元组解包”。你会发现一些伟大的资源,可以解释元组解包也。谢谢!这个例子没有提到任何关于元组解包的内容(可能是因为它太高级了),但是我现在理解了这个例子。我确实知道使用.items()获取键值对的整个过程,但我认为这个示例和语法让我感到困惑。最后,我们终于到了,谢谢!不客气。我不会担心元组解包,直到他们找到它。我很高兴我能帮上忙!
responses[name] = response