我正在构建一个字典(我稍后将其制作为JSON字符串)。我这样构建它:
data = {}
for smallItem in bigList:
data[smallItem] = smallItem
如何将循环换一行呢?
答案 0 :(得分:29)
您可以使用dict comprehension:
data = {smallItem:smallItem for smallItem in bigList}
您也可以使用dict
和generator expression:
data = dict((smallItem, smallItem) for smallItem in bigList)
但是dict理解会更快。
至于将其转换为JSON字符串,您可以使用json.dumps
。
答案 1 :(得分:6)
实际上在这个特定情况下你甚至不需要字典理解,因为你使用了重复的键/值对
>>> bigList = [1, 2, 3, 4, 5]
>>> dict(zip(bigList, bigList))
{1: 1, 2: 2, 3: 3, 4: 4, 5: 5}