我正在处理字数统计,并在 Django View (python 2) 中有以下内容:
frequency = {'This': 1, 'is': 2, 'a': 1, 'python': 5, 'dictionary': 1}
但需要对其进行渲染转换,以便标记的键和值对如下所示。该变量需要安全地呈现到 Django 模板中才能作为 JavaScript 变量使用。
frequency = [{"key": "This", "value": 1}, {"key": "is", "value": 2},{"key": "a", "value": 1}, {"key": "python", "value": 5}, {"key": "dictionary", "value": 5}];
鉴于我的实际字典要长得多,我正在寻找实现此目的的最有效方法 - 在将其作为字符串放入上下文中之前可以在纯 python 中完成吗?
最佳答案
您可以使用 items()
和列表理解来执行此操作:
frequency = {'This': 1, 'is': 2, 'a': 1, 'python': 5, 'dictionary': 1}
frequency2 = [{"key": i, "value": j} for i,j in frequency.items()]
输出:
>>> frequency2
[{'value': 1, 'key': 'This'}, {'value': 1, 'key': 'a'}, {'value': 2, 'key': 'is'}, {'value': 1, 'key': 'dictionary'}, {'value': 5, 'key': 'python'}]
关于python - 向 JSON 中的键值对添加标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36499130/