передача значения команды telebot
import telebot
import random
token = '1672045550:AAFIF0lHZVWJVRqrXkYNE94_PWx15y45KhA'
bot = telebot.TeleBot(token)
@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
bot.reply_to(message, "привет")
@bot.message_handler(content_types = ['text'])
def main_sender(message):
if message.text == "привет":
bot.send_message(message.chat.id, 'end')
bot.polling(none_stop=True)
мне нужно чтоб после слова привет пользователь вводил число или букву и она потом применялась в будующем к примеру пользователь ввел "привет 3" и привет выведется в консоль 3 раза или "привет й" и случайная буква в слове привет изменится на й, опять же это к примеру, мне нужно понять только как передавать параметр с сообщением чтоб оно записывалось к примеру как в переменную, и как переменную значение параметра можно было использовать, или что то вроде этого
Ответы (1 шт):
Автор решения: Violet
→ Ссылка
@bot.message_handler(content_types='text')
def start(message):
if 'привет' in message.text.lower():
arg = message.text.split(maxsplit=1)[1]
if arg.isdigit(): # если "аргумент" цифра
for _ in range(0, int(arg)): # "привет 3" и "привет" выведется в консоль 3(arg) раз
print(message.text[:-2])
else:
inds = [i for i, _ in enumerate(message.text[:-2]) if not message.text[:-2].isspace()]
sam = random.sample(inds, 3)
lst = list(message.text[:-2])
for ind in sam:
lst[ind] = random.choice(ascii_letters)
print("".join(lst)) # заменить 3 символа в сообщении клиента