Python optionmenu hatası

İstanbulu seçip Ankarayı seçiyorum,akabinde tekrar istanbulu seçtiğim zaman alt trafta bir tane daha optionmenu açılıyor…Her istanbulu seçtiğimde ek bir optionmenu açılıyor…Bunu nasıl engelleyebilirim

import tkinter as tk

master = tk.Tk()

svar1 = tk.StringVar(master)
svar1.set(None)

svar2 = tk.StringVar(master)
svar2.set(None)


def func(event):
    global om2
    if svar1.get() == "İstanbul":
        om2 = tk.OptionMenu(master, svar2, "Kadıköy", "Kartal")
        om2.pack()
    if svar1.get() == "Ankara":
        om2.destroy()
        om3 = tk.OptionMenu(master, svar2, "Ulus", "Millet")
        om3.pack()




om1 = tk.OptionMenu(master, svar1, "İstanbul", "Ankara", "İzmir", 
                    command=func)
om1.pack()

master.mainloop()

merhaba,
fonksiyon her çağrıldığında daha önce açık optionmenuleri silebiliriz.
hata almamak için de bunu try-except komutları kullanarak yapabiliriz.

def func(event):
    global om2, om3
    try:
        om2.destroy()
        om3.destroy()
    except NameError:
        pass
    if svar1.get() == "İstanbul":
        om2 = tk.OptionMenu(master, svar2, "Kadıköy", "Kartal")
        om2.pack()
    if svar1.get() == "Ankara":
        om3 = tk.OptionMenu(master, svar2, "Ulus", "Millet")
        om3.pack()