如果我使用 last.fm API
,使用 pylast
包装器,并查找类似轨道
,如下所示:
track = last.get_track('Radiohead', 'Karma Police')
for similar in track.get_similar():
print (similar)
我得到:
SimilarItem(item=pylast.Track(u'Radiohead', u'No Surprises', pylast.LastFMNetwork('key', 'secret', 'string', 'user', 'string2')), match=1.0)
SimilarItem(item=pylast.Track(u'Radiohead', u'Paranoid Android', pylast.LastFMNetwork('key', 'secret', 'string', 'user', 'string2')), match=0.995)
如果我尝试对其进行索引:
track = last.get_track('Radiohead', 'Karma Police')
for similar in track.get_similar():
print (similar[0])
我得到:
Radiohead - No Surprises
Radiohead - Paranoid Android
我想以这种方式打印类似
:
{
"artist": "Radiohead",
"track":"No surprises"
},
{
"artist": "Radiohead",
"track":"No surprises"
}
但是如果我尝试类似[0][0]
,我会收到以下错误:
类型错误:“Track”对象不支持索引
那么如何将结果构造为字典
?
最佳答案
如果你想要一本字典,你可以这样做:
track = last.get_track('Radiohead', 'Karma Police')
d = dict(str(item[0]).split(" - ") for item in track.get_similar())
关于python - API 调用中的 JSON 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40167211/