Tkinter içine veriler gelmiyor

Merhaba,
Kendim için tkinter arabirimli bir hava durumu uygulaması geliştirmeye çalışıyorum. hava fonksiyonum tkinter dışında çalışıyor. Ama nedense tkinter içinde sonuçlar görünmüyor. Bunun nedeni ne olabilir?

Kodlarım:

def hava(konum):
    api_key = "api"
    base_url = "http://api.openweathermap.org/data/2.5/weather?"
    city_name = konum
    complete_url = base_url + "appid=" + api_key + "&q=" + city_name + "&units=metric&lang=tr"
    response = requests.get(complete_url)
    x = response.json()

    saat=(x["dt"]+x["timezone"])
    dt_obj = datetime.utcfromtimestamp(saat).strftime("%d %m %Y | %H:%M:%S %p")

    y=x["main"]
    sicaklik = y["temp"]
    basinc = y["pressure"]
    nem = y["humidity"]
    
    w=x["weather"]
    aciklama=w[0]["description"]

    q=x["wind"]
    ruzgar=q["speed"]
    hiz=int(ruzgar*3.6) #km/h çevirme
    knot=int(hiz*0.5399568) #knot çevirme
    yon=q["deg"]
    
    e=x["clouds"]
    bulut=e["all"]

# Ekrana Bastır
    print("Tarih       : " + str(dt_obj))
    print("Hava        : " +str(aciklama) + " %" + str(bulut) + " Bulut")
    print("Sıcaklık    : " + str(sicaklik) + "°C")
    print("Basınç      : " + str(basinc) + "hPa")
    print("Nem         : %" + str(nem))
    print("Rüzgar Hızı : " + str(hiz) + " km/h " +  str(knot) + " Knots " +  str(yon) + "° " + str(deg_to_text(yon)))
    return


root = tk.Tk() 
root.geometry("400x400")

frame1 = tk.Frame(root, borderwidth=1, relief='ridge')
frame1.grid(row=0, column=0, padx=(20, 100), pady=(40, 40))
frame2 = tk.Frame(root, borderwidth=1, relief='ridge')
frame2.grid(row=0, column=1, padx=(40, 40), pady=(40, 40))
frame3 = tk.Frame(root, borderwidth=1, relief='ridge')
frame3.grid(row=1, column=0, padx=(40, 40), pady=(40, 40))
frame4 = tk.Frame(root, borderwidth=1, relief='ridge')
frame4.grid(row=1, column=1, padx=(40, 40), pady=(40, 40))

w1 = tk.Label(frame1, text ='Bodrum', font = "90", fg="Navyblue")
w1.grid(row=0, column=0)
w1_1 = tk.Label(frame1, text =hava("bodrum"), font = "45", fg="Navyblue")
w1_1.grid(row=1, column=0)

w2 = tk.Label(frame2, text ='İzmir', font = "90",fg="Navyblue")
w2.grid(row=0, column=0)
w2_1 = tk.Label(frame2, text =(hava("izmir")), font = "45", fg="Navyblue")
w2_1.grid(row=1, column=0)

w3 = tk.Label(frame3, text ='Bursa', font = "90",fg="Navyblue")
w3.grid(row=0, column=0)
w3_1 = tk.Label(frame3, text =(hava("bursa")), font = "45", fg="Navyblue")
w3_1.grid(row=1, column=0)

w4 = tk.Label(frame4, text ='Ankara', font = "90",fg="Navyblue")
w4.grid(row=0, column=0)
w4_1 = tk.Label(frame4, text =(hava("ankara")), font = "45", fg="Navyblue")
w4_1.grid(row=1, column=0)

root.mainloop()```

Çünkü sonuçları konsola yazdırıyorsunuz, fonksiyonun sonucu olarak döndürmüyorsunuz. Bu yüzden de şehirlerin hava durumu bilgileri yerine None yazıyor. Şöyle bir değişiklik yapabilirsiniz.

     return "Bursa: 10°C"
1 Beğeni

return [degisken1, degisken2, degisken3 ...]

şeklinde döndürdüm ve bu kez istediğim gibi sonuç geldi teşekkür ederim