@NHide
Начинаю изучать python

Рассылка всем ид,отсылает пока только первому в базе?

Подскажите есть база base.db
в нее записываются ид пользователей
мне нужно рассылку организовать всем пользователям бота,но он почему то выводит не все ид а только первый,почему?
def all_id():
    conn = sqlite3.connect('base.db')
    cursor = conn.cursor()
    cursor.execute('SELECT id FROM users')
    words = cursor.fetchall()
    conn.commit()
    cursor.close()
    conn.close()
    return words[0]

а вот как шлю всем юзерам
elif mail == True:
        mail = False
        text = base_work.all_id()
        bot.send_message(message.chat.id, 'В течении 3 секунд, отправиться всем пользователям!')
        for i in text:
            try:
                bot.forward_message(i, message.chat.id, disable_notification=True, message_id=message.message_id)
            except:
                pass
                bot.send_message(message.chat.id, 'Все')
  • Вопрос задан
  • 253 просмотра
Решения вопроса 1
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Как-то так:
def all_id():
    conn = sqlite3.connect('base.db')
    cursor = conn.cursor()
    cursor.execute('SELECT id FROM users')
    words = cursor.fetchall()
    conn.commit()
    cursor.close()
    conn.close()
    return words

for x in all_id():
	print(x[0])
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Вы возвращаете из функции all_id только один элемент.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы