Помогите с глобальными переменными новичку в Питоне. На pyTelegramBotAPI
Делаю тренировочного для себя бота pyTelegramBotAPI. Ниже представлена функция, являющаяся частью цепи одной из команд. Она должна скинуть ссылку на страничку VK человека, имя которого вписывает пользователь. Предыдущая функция (я её сюда не вставил) запрашивала написать это имя, а эта на введённое имя реагирует. Всё лишнее я здесь убрал. Но функция не работает, выскакивает ошибка:
def send_page(message):
if message.text.upper() == 'САНЯ':
global link
link = 'https://vk.com/***'
elif message.text.upper() == 'ЕКТОГОД':
global link
link = 'https://vk.com/***'
markup = types.InlineKeyboardMarkup()
markup.add(types.InlineKeyboardButton('Страничка выбранного человека', url=link))
bot.send_message(message.chat.id, 'Лови: ', reply_markup=markup)
SyntaxError: name 'link' is assigned to before global declaration
Конечно, можно обойтись без переменной link и всё будет работать:
def send_page(message):
if message.text.upper() == 'САНЯ':
markup = types.InlineKeyboardMarkup()
markup.add(types.InlineKeyboardButton('Страничка выбранного человека', url=ссылка*))
bot.send_message(message.chat.id, 'Лови: ', reply_markup=markup)
elif message.text.upper() == 'ЕКТОГОД':
markup = types.InlineKeyboardMarkup()
markup.add(types.InlineKeyboardButton('Страничка выбранного человека', url=ссылка*))
bot.send_message(message.chat.id, 'Лови: ', reply_markup=markup)
Но мне такой вид не нравится, соишком много повторений. Как решить проблему? Заранее спасибо!