@Studentka1996

Не определена глобальная переменная?

Здравствуйте. Код примерно такой, для всех глоб. переменных
global choose_date
    if 'Дата' in text:
        choose_date = text.split('Дата_')[-1]
        bot.send_message(message.chat.id, f'{choose_date} в какое время готовы получить заказ?', reply_markup=buttons.time_dostavki)


Предупреждения (на работу не влияет, но устранить хочется)
5f93f149b784d781306449.png

Прошу помощи.
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
kshnkvn
@kshnkvn Куратор тега Python
yay ✌️ t.me/kshnkvn
global сначала смотрит в глобальную область видимости, что бы найти там переменную с нужным названием и добавить её в локальную область, не найдя её там эта переменная добавляется в глобальную область. Помимо того, что использование глобальных переменных само по себе не есть хорошо, в случае с объявлением глобальных переменных в локальном пространстве может быть множество проблем, так что желательно объявлять их изначально, примерно так:
foo = list()


def func():
    global foo
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@bacon
Ну так предупреждения говорит "уровнем выше" нет таких переменных. А еще лучше, вообще перестать использовать global
Ответ написан
Ваш ответ на вопрос

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

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