Я работаю с набором данных, который выглядит как серия вложенных словарей. Вот пример:
{
"href": "https://api.spotify.com/v1/users/wizzler/playlists",
"items": [
{
"collaborative": false,
"external_urls": {
"spotify": "http://open.spotify.com/user/wizzler/playlists/53Y8wT46QIMz5H4WQ8O22c"
},
"href": "https://api.spotify.com/v1/users/wizzler/playlists/53Y8wT46QIMz5H4WQ8O22c",
"id": "53Y8wT46QIMz5H4WQ8O22c",
"images": [],
"name": "Wizzlers Big Playlist",
"owner": {
"external_urls": {
"spotify": "http://open.spotify.com/user/wizzler"
},
"href": "https://api.spotify.com/v1/users/wizzler",
"id": "wizzler",
"type": "user",
"uri": "spotify:user:wizzler"
},
"public": true,
"snapshot_id": "bNLWdmhh+HDsbHzhckXeDC0uyKyg4FjPI/KEsKjAE526usnz2LxwgyBoMShVL+z+",
"tracks": ...
}
]
}
У меня нет проблем с вызовом любых значений, которые я хочу из этого набора данных. Тем не менее, я пытаюсь выполнить функцию только для элементов dict, которые содержат слово «EDM». В настоящее время с моим кодом, когда я его запускаю, он выполняет функцию ни в одном из списков воспроизведения, несмотря на то, что многие содержат «EDM».
Вот фрагмент кода.
for items in results['items'] and results2['items']:
if(userid == items['owner']['id']
and items['tracks']['total'] >= intposition
and "EDM" in str(items['name'])):
sp.user_playlist_add_tracks(items['owner']['id'],items['id'], tracks, position)
print("added to" + items['owner']['display_name']
+ " s list " + items['name'])
Надеюсь, я предоставил достаточно информации и отформатировал ее прилично.