Instalace modulu pro zpracování obrazu:
Modul pro zpracování obrazu bude vyžadovat, pokud chcete vytvořit simulátor válcování kostkami s GUI. Spuštěním následujících příkazů z terminálu aktualizujte pip a nainstalujte modul Pillow.
$ python3 -m pip install --upgrade pip$ python3 -m pip install --upgrade polštář
Příklad 1: Vytvoření jednoduchého simulátoru válcování kostkami
V tomto tutoriálu lze pomocí náhodného modulu Pythonu vytvořit jednoduchý simulátor válcování kostkami. Tento skript vygeneruje výstup kostek v terminálu. Ve skriptu se tedy nepoužívá žádný modul pro zpracování obrazu. Proměnná s názvem kostky se používá k náhodnému výběru libovolného čísla od 1 do 6. The roll_the_dice () Zde je definována funkce pro generování výstupu na základě náhodné hodnoty. Smyčka nekonečné while se ve skriptu používá k nekonečnému házení kostkami, dokud uživatel nezadá cokoli bez 'y'.
# Importovat náhodný modulimportovat náhodně
# Definujte nekonečnou smyčku
zatímco je pravda:
# Vygenerujte náhodné číslo mezi 1 a 6
kostky = náhodné.randint (1, 6)
# Definujte funkci pro tisk výstupu na základě hodnoty kostky
def roll_the_dice (kostky):
přepínač =
1: „[] \ n | 0 | \ n []“,
2: „[0] \ n | | n [0]“,
3: „[0] \ n | 0 | \ n [0]“,
4: „[0 0] \ n | | n [0 0]“,
5: „[0 0] \ n | 0 | \ n [0 0]“,
6: „[0 0] \ n | 0 0 | \ n [0 0]“
zpětný přepínač.dostat (kostky)
# Zavolejte funkci
print (roll_the_dice (kostky))
# Požádejte uživatele, aby znovu hodil kostkou
answer = input („Chcete házet kostkami znovu (y / n)? : ")
# Ukončete smyčku, pokud uživatel něco napíše bez „y“
pokud odpověď != 'y':
výstup (0)
Výstup:
Výstup výše uvedeného skriptu se bude lišit v každé iteraci smyčky pro použití náhodných celých čísel. V následujícím výstupu je 5 vygenerováno v první iteraci smyčky zobrazené pomocí 5 nul. Poté uživatel zadal 'y' pokračovat ve smyčce a 4 vygenerovalo ve druhé iteraci smyčky a zobrazilo hodnotu pomocí nul jako dříve. Skript byl ukončen, když uživatel píše 'n'.
Příklad 2: Vytvořte simulátor házení kostkami s obrázky
Před provedením skriptu příkladu musíte vytvořit šest obrázků kostek. Obrázky můžete vytvořit pomocí libovolné aplikace pro vytváření obrázků. Následující šest obrázků bylo vytvořeno pro použití ve skriptu tohoto příkladu. Udržujte obrázky na stejném místě, kde vytvoříte soubor pythonu pro implementaci simulátoru.
Způsob vytvoření simulátoru házení kostkami s grafickým uživatelským rozhraním je uveden v následujícím skriptu. V Pythonu existuje mnoho modulů pro vytváření aplikací GUI. V tomto skriptu se používá modul Tkinter k implementaci simulátoru válcování kostek založeného na GUI. obraz a ImageTk ve skriptu se používají moduly k zobrazení kostkových obrázků. The náhodný modul slouží k náhodnému výběru kostky. Na začátku skriptu byl vytvořen objekt Tkinter, který definuje velikost okna a pozici, kde bude zobrazen obrázek kostky. Zde byla poloha okna nastavena centrálně. Dále byla deklarována proměnná seznamu se šesti názvy obrázků kostek. náhodný.Funkce choice () slouží k náhodnému výběru jednoho indexu názvu obrázku ze seznamu a získání názvu obrázku na základě hodnoty indexu. expand = True použil ve funkci pack () k přidání dalšího prostoru při přidávání widgetu v okně. V okně byl přidán štítek pro zobrazení obrázku kostky a v okně bylo přidáno tlačítko pro zobrazení dalšího obrázku kostky. The roll_the_dice () funkce přidružená k tlačítku pro generování dalšího obrázku kostky. Tato funkce bude vyvolána, když uživatel stiskne nebo klikne na ikonu 'ROLL THE DICE' knoflík.
# Importovat modul Tkinterimportovat tkinter
# Import obrázků a ImageTk modulů
z PIL import Image, ImageTk
# Importovat náhodný modul
importovat náhodně
# Definujte objekt pro zobrazení hlavního okna aplikace
win = tkinter.Tk ()
# Nastavte název hlavního okna
vyhrát.název ('Rolling Dice')
# Nastavte výšku a šířku hlavního okna
vyhrát.geometrie ('350x280')
# Nastavte polohu okna
vyhrát.eval ('tk :: PlaceWindow . centrum')
# Definujte seznam se šesti názvy obrázků kostek
dice_images = ['d1.png ',' d2.png ',' d3.png ',' d4.png ',' d5.png ',' d6.png ']
# Generujte libovolný index v rozmezí 0 až 6 náhodně, abyste získali aktuální obrázek kostky
img = ImageTk.PhotoImage (obrázek.otevřené (náhodné.choice (dice_images)))
# Definujte štítek pro zobrazení vybraného obrázku
lbl_image = tkinter.Štítek (výhra, obrázek = obrázek)
lbl_image.obrázek = obr
# Nastavte widget štítku uvnitř nadřazeného okna
lbl_image.balíček (rozbalit = True)
# Definujte funkci pro změnu obrazu kostky po kliknutí na tlačítko
def roll_the_dice ():
img = ImageTk.PhotoImage (obrázek.otevřené (náhodné.choice (dice_images)))
# aktualizovat obrázek
lbl_image.konfigurovat (image = img)
# ponechat odkaz
lbl_image.obrázek = obr
"
Definujte tlačítko, nastavte text tlačítka a nastavte příkaz
zavolat funkci roll_the_dice ()
"
btn = tkinter.Tlačítko (win, text = 'ROLL THE DICE', command = roll_the_dice)
# Nastavte tlačítko uvnitř nadřazeného okna
btn.balíček (rozbalit = True)
# Zavolejte hlavní smyčku Tkinteru a otevřete hlavní okno
vyhrát.mainloop ()
Výstup:
Stejně jako v předchozím příkladu bude obrázek kostky vybrán náhodně při každém stisknutí tlačítka. V následujícím výstupu byl po provedení skriptu vygenerován obrázek kostky šesti.
Obrázek kostky tří byl vygenerován po stisknutí tlačítka.
Závěr:
V tomto kurzu byly vysvětleny dva různé způsoby vytvoření simulátoru válcování kostkami pomocí skriptu Python. Pomůže čtenářům zjistit, jak lze tento typ aplikace implementovat v Pythonu.