Как собрать эти функции в едино?

Всем привет! Недавно начала изучать модуль tkinter и при написании мини игры я встал в тупик. Дело в том что я не понимаю как сначала выбрать категорию, а потом использовать его для игры(висилица). Найти случайное слово то я могу, но для этого нужно под каждую функцию написать интерфейс и прохождение игры, а как известно-это доставляет сильное раздражение для глаз. Помогите пожалуйста

    import random
    from tkinter import *
    import time
    import os
    import sys
    root=Tk()
    root.title('Deadman')
    root.geometry('300x150')
    def deadsport(event):
        sport_words=['футбол','волейбол','баскетбол','аут','крикет']
        random.choice(sport_words)

    def deadtele(event):
        tele_words=['карусель','тнт','стс','дисней']
        random.choice(tele_words)

    def deadvideogames(event):
        videogames_words=['roblox','fornite','warface','dota']
        random.choice(videogames_words)

    def dead_game_start(event): #Запуск игры
        btn_start.destroy()
        vibor_kategory=Label(root,text='Выберите категорию слов:',font=15)
        vibor_kategory.pack(fill='both')
        slova_sport=Button(root,text='Спорт')
        slova_sport.bind("<Button-2>",deadsport)
        slova_sport.pack(fill='both')
        slova_tele = Button(root, text='Телеканалы')
        slova_tele.bind("<Button-3>", deadtele)
        slova_tele.pack(fill='both')
        slova_video_games = Button(root, text='Игры')
        slova_video_games.bind("<Button-4>", deadvideogames)
        slova_video_games.pack(fill='both')
    btn_start=Button(root,
                     text='Играть',
                     width=30,height=10,
                     bg='white',fg='black',)
    btn_start.bind("<Button-1>", dead_game_start)
    btn_start.pack(fill='both')
    root.mainloop()

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

Автор решения: Швеев Алексей

Просто создаёшь словарь из списков:

themes = {
 "sport": ['футбол','волейбол','баскетбол','аут','крикет'], 
 "tele": ['карусель','тнт','стс','дисней'],
 "videogames": ['roblox','fornite','warface','dota']
}

Теперь можно получить список слов просто напрямую обратившись к нему по имени:

words = themes["tele"] # ['карусель','тнт','стс','дисней']

Ну и выбрать случайное слово:

word = random.choice(words)

При этом можно так же выбрать рандомную тему:

random_theme = random.choice(list(a.items())) # ("имя темы", ["слова"])
theme_name = random_theme[0] # имя темы
words = random_theme[1] # ["слова"]
word = random.choice(words) # "случайное слово"
→ Ссылка