[英]python django dictionaries
我有这种格式的清单:
[{'BURGLARY': [0, 1, 1, 0], 'PHYSICAL ASSAULT': [0, 0, 1, 0], 'ROBBERY':
[0, 0, 0, 1], 'VANDALISM': [2, 0, 1, 0], 'THEFT': [1, 3, 2, 1], 'DRUGS AND SUBSTANCE ABUSE': [0, 0, 1, 0], 'SEXUAL HARASSMENT': [0, 0, 0, 1]}]
我想将其格式更改为:
[
{
name:"BURGLARY",
data:[0, 1, 1, 0]
}
{
name:"PHYSICAL ASSAULT",
data:[0, 0, 1, 0]
}
...
]
我该如何存档? 请帮忙。
data = [{'BURGLARY': [0, 1, 1, 0], 'PHYSICAL ASSAULT': [0, 0, 1, 0], 'ROBBERY':
[0, 0, 0, 1], 'VANDALISM': [2, 0, 1, 0], 'THEFT': [1, 3, 2, 1], 'DRUGS
AND SUBSTANCE ABUSE': [0, 0, 1, 0], 'SEXUAL HARASSMENT': [0, 0, 0, 1]}]
rlt = [{'name': key, 'data': val} for key,val in data[0].items()]
rlt是你想要的
data = [{'BURGLARY': [0, 1, 1, 0], 'PHYSICAL ASSAULT': [0, 0, 1, 0], 'ROBBERY':
[0, 0, 0, 1], 'VANDALISM': [2, 0, 1, 0], 'THEFT': [1, 3, 2, 1], 'DRUGS AND SUBSTANCE ABUSE': [0, 0, 1, 0], 'SEXUAL HARASSMENT': [0, 0, 0, 1]}]
new_data = [{ "name": k, "data" : data[0][k]} for k in data[0]]
输出:
[{'data': [0, 0, 0, 1], 'name': 'ROBBERY'},
{'data': [2, 0, 1, 0], 'name': 'VANDALISM'},
{'data': [0, 0, 0, 1], 'name': 'SEXUAL HARASSMENT'},
{'data': [1, 3, 2, 1], 'name': 'THEFT'},
{'data': [0, 1, 1, 0], 'name': 'BURGLARY'},
{'data': [0, 0, 1, 0], 'name': 'PHYSICAL ASSAULT'},
{'data': [0, 0, 1, 0], 'name': 'DRUGS AND SUBSTANCE ABUSE'}]
a=[{'BURGLARY': [0, 1, 1, 0], 'PHYSICAL ASSAULT': [0, 0, 1, 0], 'ROBBERY': [0, 0, 0, 1], 'VANDALISM': [2, 0, 1, 0], 'THEFT': [1, 3, 2, 1], 'DRUGS AND SUBSTANCE ABUSE': [0, 0, 1, 0], 'SEXUAL HARASSMENT': [0, 0, 0, 1]}]
result=[]
for b in a:
for i,j in b.items():
result.append({"name":i,"data":j})
print(result)
输出
[{'name': 'VANDALISM', 'data': [2, 0, 1, 0]}, {'name': 'SEXUAL HARASSMENT', 'data': [0, 0, 0, 1]}, {'name': 'PHYSICAL ASSAULT', 'data': [0, 0, 1, 0]}, {'name': 'DRUGS AND SUBSTANCE ABUSE', 'data': [0, 0, 1, 0]}, {'name': 'THEFT', 'data': [1, 3, 2, 1]}, {'name': 'ROBBERY', 'data': [0, 0, 0, 1]}, {'name': 'BURGLARY', 'data': [0, 1, 1, 0]}]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.