Python split列表索引超出了tweepy

问题描述

我正在使用Tweepy从Twitter提取推文并自动回复,并且我想在用户推文的开头进行拆分,以便该机器人不会不断地自我循环并无限循环地答复。

这是我得到的错误:

Traceback (most recent call last):
  File "hello.py",line 47,in <module>
    text = text.split("@DungeonTrekker ",1)[1]
IndexError: list index out of range

这是代码:

text = x.text
text = text.split("@DungeonTrekker ",1)[1] # Split tweet

API.update_status("@" + x.user.screen_name + text +  x.user.name,x.id) # Tweet
print("Status Updated") # Console output

exclude.append(x.id) # Add to excluded list

当我使用给定的字符串作为输入运行代码时,这很好。我还打印了实际的字符串text,它正确地接收了字符串,所以问题出在split()函数上,有什么想法吗?

解决方法

text = text.split("@DungeonTrekker ",1)[1] # Split tweet 此行告诉文本在@DungeonTrekker

的实例处拆分

如果@DungeonTrekker在该行的开头,则前面将没有任何内容,而在其后则是其余文本。索引0为”,索引1为其余推文。

但是,如果您正在接受其他用户的推文,一开始就不会有@DungeonTrekker ,因此,除非在推文中提到,否则您的索引只能为0。 >

您可以在 (空格)处拆分,并采用第一个索引来解决此问题,无论用户名是什么(我不使用twitter,但我假设用户名),它将正确分割。

,

a =“ ababdababd adbabd”

a.split(“ 1”,1)[1] 追溯(最近一次通话): 文件“”,第1行,位于 IndexError:列表索引超出范围

我认为您的问题出在您的字符串中,不会分裂

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...