Форум сайта python.su
Я как новичок в сфере программирования сейчас не совсем пойму почему возникает ошибка, кто может , объясните пожалуйста , почему он не может вызвать модуль
Вот сам код
import constants import telebot import utils import random import SQLighter from telebot import types bot = telebot.TeleBot(constants.token_bobkovtest) print("Bot Handler Game и Функция game запускается") @bot.message_handler(commands=['game']) def game(message): # Подключаемся к БД db_worker = SQLighter(constants.database_name) # Получаем случайную строку из БД row = db_worker.select_single(random.randint(1, utils.get_rows_count())) # Формируем разметку markup = utils.generate_markup(row[2], row[3]) # Отправляем аудиофайл с вариантами ответа bot.send_voice(message.chat.id, row[1], reply_markup=markup) # Включаем "игровой режим" utils.set_user_game(message.chat.id, row[2]) # Отсоединяемся от БД db_worker.close() print("Функция Game выполнена успешно") print("Запускаются условия") @bot.message_handler(func=lambda message: True, content_types=['text']) def check_answer(message): # Если функция возвращает None -> Человек не в игре answer = utils.get_answer_for_user(message.chat.id) # Как Вы помните, answer может быть либо текст, либо None # Если None: if not answer: bot.send_message(message.chat.id, 'Чтобы начать игру, выберите команду /game') else: # Уберем клавиатуру с вариантами ответа. keyboard_hider = types.ReplyKeyboardRemove() # Если ответ правильный/неправильный if message.text == answer: bot.send_message(message.chat.id, 'Верно!', reply_markup=keyboard_hider) else: bot.send_message(message.chat.id, 'Увы, Вы не угадали. Попробуйте ещё раз!', reply_markup=keyboard_hider) # Удаляем юзера из хранилища (игра закончена) utils.finish_user_game(message.chat.id) print("Условия запущены") print("Бот пул запускается") if __name__ == '__main__': utils.count_rows() random.seed() bot.polling(none_stop=True) print("Бот пул запущен")
C:\Users\Mihail\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Mihail/PycharmProjects/telegram_bot/GitBooksBot.py Bot Handler Game и Функция game запускается Функция Game выполнена успешно Запускаются условия Условия запущены Бот пул запускается Traceback (most recent call last): File "C:/Users/Mihail/PycharmProjects/telegram_bot/GitBooksBot.py", line 55, in <module> bot.polling(none_stop=True) File "C:\Users\Mihail\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 244, in polling self.__threaded_polling(none_stop, interval, timeout) File "C:\Users\Mihail\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 268, in __threaded_polling self.worker_pool.raise_exceptions() File "C:\Users\Mihail\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\util.py", line 103, in raise_exceptions six.reraise(self.exc_info[0], self.exc_info[1], self.exc_info[2]) File "C:\Users\Mihail\AppData\Local\Programs\Python\Python36-32\lib\site-packages\six.py", line 686, in reraise raise value File "C:\Users\Mihail\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\util.py", line 54, in run task(*args, **kwargs) File "C:/Users/Mihail/PycharmProjects/telegram_bot/GitBooksBot.py", line 15, in game db_worker = SQLighter(constants.database_name) TypeError: 'module' object is not callable Process finished with exit code 1
Офлайн
Если по учебнику пробуешь, то пытаешься вызвать модуль, а не класс
вместо
import SQLighter
from SQLighter import SQLighter
Офлайн
ajib6eptБольшое спасибо, вопрос закрыт
Если по учебнику пробуешь, то пытаешься вызвать модуль, а не классвместо
Офлайн