如何解决字典的内部顺序在 XMLHTTPRequest 中的 JSON.parse() 之后发生变化
def countSongsFull():
for i in range(0,len(shArray)):
for j in range(0,len(shArray[i])): # For every song
if shArray[i][j]['trackName'] == "Vintage Chanel (feat. Joey Bada$$,Kirk Knight,Meechy Darko & Zombie Juice)":
shArray[i][j]['trackName'] = "Vintage Chanel (feat. Joey Badass,Meechy Darko & Zombie Juice)"
track = shArray[i][j]['trackName']
artist = shArray[i][j]['artistName']
if track in songDict:
songDict[track][1] += shArray[i][j]['msPlayed']
else:
songDict.update({track: [artist,shArray[i][j]['msPlayed']]})
sortedList = OrderedDict(sorted(songDict.items(),key=lambda item: item[1][1],reverse=True))
return json.dumps(sortedList,separators=(',',':'))
{"UnkNown Track":["UnkNown Artist",121091397],"Blind":["Korn",32389011],"Falling Away from Me":["Korn",31157418],"Hot Dog":["Limp Bizkit",30380901],"Closer":["Nine Inch Nails",29512377],"It's On!":["Korn",28081239],"Be Quiet and Drive (Far Away)":["Deftones",24715597],"Justin":["Korn",24513041],"Dirty":["Korn",24267603],"Psycho Holiday":["Pantera",24170972]}
XMLHTTPRequest 代码:
var replyParse;
var http = new XMLHttpRequest();
http.open('GET','/cgi-bin/simpleData.py?songF=True',true);
http.setRequestHeader('content-type','application/x-www-form-urlencoded');
http.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
replyParse = JSON.parse(this.responseText);
console.log(replyParse);
}
};
http.send(null);
XMLHTTPRequest 之后的控制台输出:
{745: Array(2),1985: Array(2),2002: Array(2),3005: Array(2),5200: Array(2),90210: Array(2),UnkNown Track: Array(2),Blind: Array(2),Falling Away from Me: Array(2),Hot Dog: Array(2),Closer: Array(2)}
为什么在 XMLRequest 之后订单会发生变化,我该如何纠正?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。