Python 尝试发送消息电报时出现索引错误

Python 尝试发送消息电报时出现索引错误,python,for-loop,indexing,telegram-bot,Python,For Loop,Indexing,Telegram Bot,在我的代码中,我想将列表中的一些字符串发送给一些具有特定chat_id的用户,并且我使用1作为循环和Im获取索引错误,因为我的chat_id列表的元素少于字符串列表 def sendTextMessage(self): for i in range(len(self.chat_id) + 10): link = random.choices(importinks()) url = 'https://api.teleg

在我的代码中,我想将列表中的一些字符串发送给一些具有特定chat_id的用户,并且我使用1作为循环和Im获取索引错误,因为我的chat_id列表的元素少于字符串列表

        def sendTextMessage(self):
        for i in range(len(self.chat_id) + 10):
            link = random.choices(importinks())
            url = 'https://api.telegram.org/botMY_BOT_TOKEN/sendMessage?chat_id={}&text={}'.format(self.chat_id[i],link)
            r = requests.get(url)
            time.sleep(2)
            print(r.status_code)
            print(self.chat_id)

有人能告诉我如何在不使用嵌套for循环的情况下修复此问题吗?

如果您想向每个用户id发送15条随机消息,您应该使用如下循环:

for id in self.chat_id:    
    for i in range(15):
            link = random.choices(importinks())
            url = 'https://api.telegram.org/botMY_BOT_TOKEN/sendMessage?chat_id={}&text={}'.format(id,link)
            r = requests.get(url)
            time.sleep(2)
            print(r.status_code)
            print(self.chat_id)

除了减少发送的随机链接数量外,我不知道如何处理您的时间问题。

什么是聊天id,为什么要添加10?我添加10的原因是发送的链接数量等于聊天id列表元素的数量,我想发送更多链接。@Phix dude,我真的被这个问题难住了。你能帮我吗?我知道,但是发送的链接数等于self.chat_id中的元素数,我想发送更多链接。你知道我该怎么做吗?你想用什么self.chat_id[I]值来表示这些附加值?也许你可以在这个循环之后为你想要推送的所有附加链接添加第二个循环?好吧,问题是self.chat\u id中没有足够的项目。我的chat\u it列表中有4个id,我想发送大约15个链接,因此附加值没有合适的值,使用嵌套循环需要很多时间运行。如果你愿意,我可以给你我的全部代码。好吧,帮我运行这个-在前4个聊天id之后,你希望第5个链接的url是什么?解释一下,可能会更容易。让我说清楚。我有4个聊天室,我应该发送15个链接到他们每个。我使用for循环来完成它。也许问题在于随机选择,但我不确定。我将在聊天信息中向您发送整个程序。谢谢