Python中列表的神秘命名

2024-03-29 11:37:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python编写一个程序,我正在使用字典。我需要为字典中的每个键创建一个空列表,并且每个列表都需要与该键具有相同的名称。密钥是用户输入的,这就是为什么我不能用传统的方式列出一个列表。 这是我做的第一件事

a = {"x":1, "y":2, "z"3}
list(a.keys())
a.pop() = []   # This raises an error

在创建词典的时候,我也试着列出清单,但这也没用:

^{pr2}$

这创建了一个名为“b”的列表,而不是用户输入的任何内容。请帮忙!!在


Tags: 用户程序名称an列表字典方式密钥
2条回答

这真的没什么意义。为什么你的名单需要“名字”?那么,你说的“名字”是什么意思?在

其次,你的代码什么也做不了。a.keys()已经是一个列表。对它调用list不会执行任何其他操作。但无论如何,不管这行的结果是什么,它都会立即被丢弃,因为您不会将结果存储在任何地方。在

pop不适用于词典,它适用于列表。将pop的结果设置为列表意味着什么?您是否尝试用字典中每个键的名称动态创建一组局部变量?如果是,为什么?为什么不简单地用第一个的键创建另一个字典,并将每个值作为一个新列表?这可以通过一个命令完成:

b = dict((k, []) for k in b.keys())

(请注意dict.fromkeys公司()在这里不起作用,因为这会导致每个元素共享同一个列表。)

请改用^{}input需要一个有效的Python表达式,并将计算用户输入的任何内容。因此,如果用户输入一个单词,它将计算该单词并尝试找到一个具有其名称的对象。在

编辑:为了进一步澄清,例如,input("INPUT1")相当于做eval(raw_input("INPUT1"))。在

相关问题 更多 >