出于某种原因,我在 Python 中的这些代码行上遇到了错误:
for identity in identities.iterkeys():
if "twitter" in identity:
OUT.write(identity.rsplit('/', 0))
这是我收到的错误:
OUT.write(identity.rsplit('/', 0))
TypeError: must be string or buffer, not list
我完全困惑为什么 if "twitter"
行可以工作,但 rsplit 不行,而且我整晚都在绞尽脑汁地反对这个问题。 (该字符串是一个 URL,如果有什么区别的话。)
最佳答案
rsplit
返回一个列表。您需要再次检索该字符串。
OUT.write(identity.rsplit('/', 0)[0])
顺便说一句,identity.rsplit('/', 0')[0]
只是返回您的 identity
字符串,未更改。也许您正在寻找 identity.rsplit('/', 1)[1]
。
关于python - 尝试从 python 中的字典中拆分作为键的字符串,出现无法解释的错误。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9249717/