繁体   English   中英

Spotipy: AttributeError: 'list' object 没有属性 'split'

[英]Spotipy: AttributeError: 'list' object has no attribute 'split'

我对 python 有点陌生——仅仅几个月——但我正试图解决我在使用 Spotipy 获取一些音频功能时不断遇到的 AttributeError 问题。

当我运行这个:

bb_songs = ['24ySl2hOPGCDcxBxFIqWBu', '5v4GgrXPMghOnBBLmveLac', etc...  # a list of Spotify song IDs
spotify = spotipy.Spotify(client_credentials_manager=SpotifyClientCredentials())
credentials = spotipy.oauth2.SpotifyClientCredentials()
print(spotify.audio_features(tracks=[bb_songs]))

我明白了:

(base) Matthews-MBP-2:spotipy MattJust$ python3 erase.py
Traceback (most recent call last):
  File "erase.py", line 20, in <module>
    print(spotify.audio_features(tracks=[bb_songs]))
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/spotipy/client.py", line 1243, in audio_features
    tlist = [self._get_id("track", t) for t in tracks]
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/spotipy/client.py", line 1243, in <listcomp>
    tlist = [self._get_id("track", t) for t in tracks]
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/spotipy/client.py", line 1462, in _get_id
    fields = id.split(":")
AttributeError: 'list' object has no attribute 'split'

我是否认为 SpotiPy 中的 audio_features function 有一个不喜欢我的列表的拆分 function,因为没有像“'track':'5v4GgrXPMghOnBBLmL'这样的字符串列表?

任何帮助将不胜感激!

马修

试试print(spotify.audio_features(tracks=bb_songs))去掉方括号

而不是print(spotify.audio_features(tracks=[bb_songs]))

将您的列表包裹在一组方括号中会创建一个列表,其中包含一个元素,即您的列表。 function 尝试迭代列表元素,对每个元素执行拆分 function。 但是,由于您传递的是列表列表,因此 function 会返回错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM