Python中列表的神秘命名

问题描述

| 我正在用python编写程序,并且正在使用字典。我需要为字典中的每个键创建一个空列表,并且每个列表都必须具有与该键相同的名称。键是用户输入的,这就是为什么我不能仅以常规方式列出列表的原因。 这是我尝试的第一件事
a = {\"x\":1,\"y\":2,\"z\"3}
list(a.keys())
a.pop() = []   # This raises an error
在创建字典时,我也尝试列出这些列表,但这也不起作用:
a = {}
b = input(\"INPUT1\")
c = input(\"INPUT2\")
a[b] = c
b = []
这将创建一个名称为“ b”的列表,而不是用户输入的名称。请帮忙!!     

解决方法

这确实没有多大意义。为什么您的列表需要“姓名”?因此,“名字”是什么意思? 其次,您的代码不执行任何操作。
a.keys()
已经是列表。在其上调用doesn3ѭ不会执行任何其他操作。但是无论如何,无论该行的结果如何,都将其立即丢弃,因为您不会将结果存储在任何地方。
pop
不适用于字典,适用于列表。将
pop
的结果设置为列表意味着什么?您是否要使用字典中每个键的名称动态创建一组局部变量?如果是这样,为什么?为什么不简单地使用第一个键并将每个值作为新列表创建另一个词典呢?可以通过一个命令来完成:
b = dict((k,[]) for k in b.keys())
(请注意,dict.fromkeys()在这里不起作用,因为这将导致每个元素共享相同的列表。)     ,改用
raw_input
input
需要一个有效的Python表达式,并且会评估用户输入的内容。因此,如果用户输入了一个单词,它将评估该单词并尝试查找带有其名称的对象。 编辑:为进一步说明,例如,ѭ9等于做of10ѭ。     

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...