【发布时间】:2019-03-28 05:13:49
【问题描述】:
我有一个这种格式的json文件,
d = {
"allowed_langs": [{
"langs": ["java", "golang", "python"]
},
{
"langs": ["java", "golang", "csharp"]
},
]
}
我想要的输出是制作一个包含所有唯一 langs 的语言列表,
所需的输出,
languages = ["java", "golang", "python", "csharp"]
首先我创建了一个空集,
allowed_languages = set()
我尝试使用嵌套循环来做到这一点,
for allowed_langss in d["allowed_langs"]:
for each in allowed_langss["langs"]:
allowed_languages.update(each)
但是当我打印它时,我得到了这个,
print(allowed_languages)
输出,
{'t', 'j', 'g', 'h', 'r', 'o', 'y', 'c', 'v', 'n', 'p', 'l', 'a', 's'}
谁能告诉我为什么它会分解成字符?
我也试过list comprehension
print([lang for lang in d['allowed_langs']])
但这给了我,
[{'langs': ['java', 'golang', 'python']}, {'langs': ['java', 'golang', 'csharp']}]
虽然我想要的输出是,
所需的输出,
languages = ["java", "golang", "python", "csharp"]
【问题讨论】:
标签: python python-3.x