Как использовать объект класса в других классах?

Здравствуйте.
Есть файл main.py:
import telebot
from Bot.settings.Settings import Settings
from Bot.steps.Welcome import Welcome
settings = Settings()
bot = telebot.TeleBot(settings.TELEGRAM_BOT_TOKEN, parse_mode='html')
action = Welcome(bot)
action.greet_user()
bot.polling(none_stop=True)

и файл Welcome.py:
class Welcome:
    def __init__(self, bot):
        self.bot = bot

    @self.bot.message_handler(commands=settings.TELEGRAM_BOT_COMMANDS)
    def greet_user(message):
        self.bot.send_message(message.from_user.id, messages.translate("welcome", "ru"), disable_web_page_preview=True)
        send = self.bot.send_message(message.from_user.id, messages.translate('choose_language', 'ru'), reply_markup=keyboards.language_selection())
        self.bot.register_next_step_handler(send, self.get_user_language)
        return

Необходимо иметь возможность использовать объект класса bot из файла main.py в других файлах-классах, которые при инициализации принимают этот объект класса bot. Думал организовать через обёртку в методе __init__ наследуемого класса, но получаю NameError: name 'self' is not defined.
  • Вопрос задан
  • 138 просмотров
Пригласить эксперта
Ответы на вопрос 2
def greet_user(self, message):
Ответ написан
Комментировать
@Kadabrov
В файле welcome.py
from main import bot
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы