假设我a在Python中有一个列表,其条目方便地映射到字典。每个偶数元素代表字典的键,后面的奇数元素是值
例如,
a = ['hello','world','1','2']
我想将其转换为字典b,
b['hello'] = 'world'
b['1'] = '2'
语法上最干净的方法是什么?
b = dict(zip(a[::2], a[1::2]))
如果a
很大,则可能需要执行以下操作,而不会像上面那样创建任何临时列表。
from itertools import izip
i = iter(a)
b = dict(izip(i, i))
在Python 3中,您也可以使用dict
理解,但具有讽刺意味的是,我认为最简单的方法是使用range()and len()
,通常是代码味道。
b = {a[i]: a[i+1] for i in range(0, len(a), 2)}
因此iter()/izip()
,尽管EOL在注释中指出,该方法仍可能是Python 3中使用最多的Python语言,但在Python 3 zip()中已经很懒了,因此您不需要izip()
。
i = iter(a)
b = dict(zip(i, i))
如果只想一行,就必须作弊并使用分号。
问题内容: l = [“a”, “b”, “c”, “d”, “e”] 我想将此列表转换为字典,例如: 因此,基本上,偶数将是关键,而赔率将是值。我知道我可以使用“非Python”方式(例如使用if语句的for循环)来完成此操作,但我相信应该有一种“ Python”方式来完成此任务。因此,感谢您的帮助:) 问题答案: 使用通常的石斑鱼食谱,您可以执行以下操作: Python 2: Python 3
问题内容: 我有一个字典列表,看起来像这样: 等等。列表中可能还有更多文档。我需要将它们转换为一个JSON文档,可以通过bottle返回该文档,但我不知道该怎么做。请帮忙。我在该网站上看到了类似的问题,但是我无法理解那里的解决方案。 问题答案: 使用json库 顺便说一句,您可能会考虑将变量列表更改为另一个名称,这是用于创建列表的内置函数,如果不更改变量名称,则可能会出现一些意外行为或错误代码。
问题内容: 我有一个列表格式,如下所示: 如何转换为包含如下所示元素的列表: 问题答案: 用途: 或使用将其视为JSON : 以Python文字作为输入(因此Python源代码中的文本将为您提供一个值),以JSON输入。 演示: 只有当您的输入字符串中包含多个整数列表时,两者之间的区别才会发挥作用。JSON字符串包含unicode,在Python 2上无法正确解释,并且JSON类型只是支持的一部分
问题内容: 我有这样的词典列表: 我想把它变成这样的大熊猫: 注意:列的顺序无关紧要。 如何将字典列表转换为如上所述的? 问题答案: 假设d你的字典列表很简单:
我正在尝试将列表转换为元组。 Google上的大多数解决方案提供以下代码: 但是,当我运行代码时,它会产生一条错误消息: TypeError:“tuple”对象不可调用 我如何解决这个问题?
问题内容: 我有以下格式的行: 现在,我要在文件中写入以下内容: 基本上将上面转换成jsonarray? Python中是否有内置方法,库或函数可将数组“转储”到json数组中? 另请注意,我不希望在文件中序列化“ L”。 问题答案: 使用该模块生成JSON输出: 这会将JSON结果直接写入文件(如果文件已经存在,则替换任何先前的内容)。 如果您需要Python本身中的JSON结果字符串,请使用(