1
resposta

NameError: name 'telegram_engine' is not defined. Did you mean: 'TelegramEngine'?

Eu defini a variável exatamente como demonstrado pelo módulo importado do pypi chamado pybotnet e mesmo assim o interpretador insisti em dizer que a váriavel telegram_engine não está definida. VEJA O PRINT do meu código e do pypi... Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Andre! Tudo bem?

Analisando o print do seu código, percebo que você está tentando utilizar uma variável chamada telegram_engine dentro do bloco except. No entanto, essa variável só é definida dentro do bloco try e, caso ocorra uma exceção, ela não será criada. Isso explicaria o erro NameError: name 'telegram_engine' is not defined.

Uma solução possível seria inicializar a variável telegram_engine antes do bloco try, garantindo assim que ela exista independentemente de uma exceção ser lançada ou não. Aqui está um exemplo de como você poderia fazer isso:

# Inicialize a variável com um valor padrão antes do bloco try
telegram_engine = None

def crash():
    try:
        # ... seu código ...
        # Supondo que TelegramEngine seja uma classe que você importou corretamente:
        telegram_engine = TelegramEngine(token=my_token, admin_chat_id=my_id)
        # ... mais código ...
    except Exception as e:
        # Aqui você pode decidir o que fazer com a exceção, se quiser logar ou passar
        pass

    # Agora você pode usar a variável telegram_engine fora do bloco try
    # Mas lembre-se de verificar se ela foi definida corretamente antes de usar
    if telegram_engine is not None:
        # ... seu código usando telegram_engine ...

Além disso, é importante que você trate as exceções de maneira adequada no bloco except. Se você simplesmente passar a exceção, pode ser difícil entender o que deu errado caso ocorra um erro.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.