Исправить код телеграмм бота, который говорит погоду

from pyowm import OWM
from pyowm.utils 
import config 
from pyowm.utils import timestamps    
from translate import Translator      

translator=Translator(from_lang='en',to_lang='ru')  

import telebot  

owm= OWM('4d96bb7f8f95caf8798fb523f6508ff3') 
bot = telebot.TeleBot("1692473278:AAF3bm5fqgCF1tIFNJ7r24mcDL4AlT4k8kE")   

@bot.message_handler(content_types=['text'])      
@bot.message_handler(func=lambda message: True) 
def send_echo(message):   
    mgr = owm.weather_manager()   
    observation = mgr.weather_at_place(message.text)   
    w = observation.weather
    temp = w.temperature('celsius')['temp']       
    sky = translator.translate(w.detailed_status)   

    answer = 'В городе', message.text, 'сейчас', sky, answer += 'Температура сейчас примерно:', temp, 'Цельсия'   

    if temp < 10:
        answer += 'Сейчас очень холодно,одевайся по теплей'   
    elif temp < 20:
        answer += "Сейчас холодно одевайся  теплей"   
    else:    
        answer += 'Температура нормальная одевай что угодно'    

bot.send_message(message.chat.id,answer)  
bot.polling()

Выдает ошибку:

can only concatenate tuple (not "str") to tuple

Ответы (1 шт):

Автор решения: Vadim.Sharoikin

используйте f-строки для формирования ответа.

answer = f'В городе , {message.text}, сейчас, {sky}.Температура сейчас примерно: {temp} Цельсия' 

а ошибка вам говорит о том что нельзя соединять переменные разных типов.

→ Ссылка