python - 如何以列表格式获取 spotipy 播放列表结果

标签 python spotipy

我正在使用 spotipy 获取我的播放列表列表。我用

if token:
sp = spotipy.Spotify(auth=token)
playlists = sp.user_playlists(username)
for item in playlists['items']:
    id= item['uri']
    print id

这将返回一个播放列表 uri 列表,如下所示

spotify:user:ultramusicofficial:playlist:0gvQoG7iMMz8L5Ltsa4lkT spotify:user:spotify:playlist:4Ha7Qja6HY3AgvNBgWz87p spotify:user:ministryofsounduk:playlist:7grWVkJDQpcBie8oqKP6hv

但是它返回它们的方式有些奇怪。这不是一个普通的 list ,我似乎无法将其纳入其中。如果我使用

print id[1]

它会返回类似的东西

p

p

p

我希望能够做类似的事情

print id[1]

让它返回

spotify:user:spotify:playlist:4Ha7Qja6HY3AgvNBgWz87p

我试过以不同的方式连接和拼接它,我试过将它用作元组,将它转换为字符串。没有任何效果我显然非常不确定该怎么做。我觉得这可能很简单,我只是想念它。任何帮助将不胜感激。

最佳答案

您只是打印 id,而不是将它们收集到列表中,因此您的 id 是循环中的最后一项,它是一个 uri(字符串)。您可以使用列表推导式从 for 循环中创建一个列表:

id = [item['uri'] for item in playlists['items']]

或者从一个空列表开始并将结果附加到它:

id = []
for item in playlists['items']:
    id.append(item['uri'])

关于python - 如何以列表格式获取 spotipy 播放列表结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41366905/

相关文章:

python - 有没有一种方法可以使用 Spotipy 从播放列表中检索所有轨道?

python - 如何在 Spotify、Python API 中工作?

python - 使用棉花糖模式过滤 sqlalchemy 表更新

python - 使用 spotipy 提取艺术家流派和歌曲发布日期

python - 读取 csv 中带有逗号和引号的字段,其中逗号是分隔符 - pyspark

python - 如何调试/记录 wsgi python 应用程序?

python - 我如何处理 Django 中的 spotify api 身份验证重定向 uri?

python - 使用 MIMEApplication 将 s3 文件附加到 smtplib lib 电子邮件

python - 如何在python中使用子进程模块