[英]Sort keys in a dictionary Python
I have a Json file like this: 我有一个像这样的Json文件:
{
"wasGeneratedBy": {
"_:wGB3": {
"prov:entity": "ivo://stsci/DSS-digitized-J.444",
"prov:activity": "stcsiNum-1b"
},
"_:wGB1": {
"prov:entity": "ivo://stsci/DSS-digitized-J.444-cutouts",
"prov:activity": "cds_cutout444"
},
"_:wGB2": {
"prov:entity": "ivo://stsci/DSS-digitized-I.444",
"prov:activity": "stcsiNum-1a"
}
},
"activity": {
"stcsiNum-1a": {},
},
"used": {
"_:u6": {
"prov:entity": "ivo://stsci/DSS-Plate-R.444",
"prov:activity": "stcsiNum-1c"
},
"_:u2": {
"prov:entity": "ivo://stsci/DSS-Plate-I.444",
"prov:activity": "stcsiNum-1a"
},
"_:u3": {
"prov:entity": "ivo://stsci/DSS-digitized-J.444",
"prov:activity": "cds_cutout444"
},
"entity": {
"ivo://stsci/DSS-digitized-R.444": {},
"ivo://stsci/DSS-digitized-J.444-cutouts": {},
"ivo://stsci/DSS-Plate-R.444": {},
}
}
But I want to sort all the keys ("wasGenereratedBy","activiy"...) in a specific order like this ("activity","entity","used","wasGeneratedBy") 但是我想按这样的特定顺序(“活动”,“实体”,“已使用”,“ wasGeneratedBy”)对所有键(“ wasGenereratedBy”,“活动” ...)进行排序
I have declared this: 我已经声明了这一点:
my_own_order = ['entity', 'used', 'activity','wasGeneratedBy']
And I have try this, but doesn't work: 我已经尝试过了,但是没有用:
print sorted(fileName,order=my_own_order)
Any suggestions ? 有什么建议么 ? Thanks you
谢谢
Use OrderedDict
: 使用
OrderedDict
:
from collections import OrderedDict
print OrderedDict((k,mydict[k] for k in my_own_order))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.