MuckRuno
@MuckRuno
Молодой начинающий разработчик, активно развиваю б

Выдает ошибку can only concatenate str (not "list") to str, как исправить?

Вот сама ошибка
Traceback (most recent call last):
File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py", line 31, in
start(fakepyfile,mainpyfile)
File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py", line 30, in start
exec(open(mainpyfile).read(), __main__.__dict__)
File "", line 195, in
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/telebot/__init__.py", line 658, in polling
self.__threaded_polling(non_stop, interval, timeout, long_polling_timeout, allowed_updates)
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/telebot/__init__.py", line 720, in __threaded_polling
raise e
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/telebot/__init__.py", line 680, in __threaded_polling
self.worker_pool.raise_exceptions()
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/telebot/util.py", line 135, in raise_exceptions
raise self.exception_info
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/telebot/util.py", line 87, in run
task(*args, **kwargs)
File "", line 32, in get_text_messages
TypeError: can only concatenate str (not "list") to str

Ошибка происходит при выполнении именно этой части:
op = ["Да", "Нет", "Ахахаххаха", "че"]
if message.text == "Жмал алё":
    	bot.send_message(message.chat.id, "*звонок*")
    	time.sleep(1)
    	bot.send_message(message.chat.id, "*слаживаем газетку*")
    	time.sleep(2)
    	bot.send_message(message.chat.id, "Да?")
    	while True:
    		bot.send_message(message.chat.id,  message.text + random.sample(op, k=1))
а точнее команда Жмал алё работает, а вот если после нее что-нибудь написать то идёт ошибка
  • Вопрос задан
  • 1702 просмотра
Решения вопроса 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
random.sample() возвращает список, а вы его пытаетесь прибавить к строке. Нельзя складывать строки со списками. Видимо, вам нужна функция choice вместо sample.
Ответ написан
@Kvason
Веб-разработчик
В ошибке же написано что ты конкатенируешь строку и список, вместо random.sample() используй random.choice()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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