Python

Veidojiet kauliņu ripināšanas simulatoru Python

Veidojiet kauliņu ripināšanas simulatoru Python
Kauliņš ir vienkāršs kubs, kas ģenerē jebkuru skaitli no 1 līdz 6, un kauliņu simulators ir datora modelis, kas lietotājam met kauliņus. Kauliņu ripināšanas simulatoru Python var īstenot dažādos veidos. Lai izveidotu simulatorā izmantojamus attēlus, būs nepieciešami seši attēli. Python modulis Spilvens tiek izmantots, lai parādītu jebkuru Python attēlu, kas pēc noklusējuma nav instalēts. Kauliņu ripināšanas simulatoru var ieviest bez GUI un GUI, kā parādīts šajā apmācībā.

Attēlu apstrādes moduļa instalēšana:

Attēlu apstrādes modulim būs nepieciešams, ja vēlaties izveidot kauliņu ritināšanas simulatoru ar GUI. Lai atjauninātu pip un instalētu moduli Spilvens, no termināļa izpildiet šīs komandas.

$ python3 -m pip install --upgrade pip
$ python3 -m pip install --jaunināt spilvenu

1. piemērs: vienkārša kauliņu ripināšanas simulatora izveide

Šajā apmācībā, izmantojot Python izlases moduli, var izveidot vienkāršu kauliņu ritināšanas simulatoru. Šis skripts ģenerēs kauliņu izvadi terminālā. Tātad skriptā netiek izmantots neviens attēlu apstrādes modulis. Mainīgais ar nosaukumu kauliņš tiek izmantots, lai nejauši ņemtu jebkuru skaitli no 1 līdz 6. The jāmet kauliņš() Funkcija ir definēta šeit, lai ģenerētu izvadi, pamatojoties uz nejaušo vērtību. Infinite while cikls tiek izmantots skriptā, lai kauliņus ripotu bezgalīgi reizes, līdz lietotājs ierakstīs jebko bez “y”.

# Importēt izlases moduli
importēt izlases veidā
# Definējiet bezgalīgo cilpu
kamēr patiess:
# Izveidojiet nejaušu skaitli no 1 līdz 6
kauliņš = nejaušs.randints (1, 6)
# Definējiet funkciju, kā izdrukāt izvadi, pamatojoties uz kauliņu vērtību
def roll_the_dice (kauliņš):
komutators =
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]"

atgriešanās komutators.dabūt (kauliņš)
# Izsauciet funkciju
izdrukāt (roll_the_dice (dice))
# Palūdziet lietotājam atkal mest kauliņu
atbilde = ievade ("Vai vēlaties atkal mest kauliņu (jā / n)? : ")
# Pārtrauciet cilpu, ja lietotājs ievada kaut ko bez “y”
ja atbildi != 'y':
izeja (0)

Izeja:

Iepriekš minētā skripta izeja mainīsies katrā cilpas atkārtojumā, izmantojot nejaušus veselu skaitļu skaitļus. Nākamajā izvadā 5 tiek ģenerēti pirmajā parādītās cilpas atkārtojumā, izmantojot 5 nulles. Pēc tam lietotājs ierakstīja "y" lai turpinātu cilpu, un 4 ir izveidojuši cilpas otro atkārtojumu un parādījuši vērtību, izmantojot nulles, tāpat kā iepriekš. Skripts ir pārtraukts, kad lietotājs raksta 'n'.

2. piemērs: izveidojiet kauliņu ripināšanas simulatoru ar attēliem

Pirms izpildāt piemēra skriptu, jums ir jāizveido seši kauliņu attēli. Attēlus varat izveidot, izmantojot jebkuru attēlu veidošanas lietojumprogrammu. Šādi seši attēli ir izveidoti izmantošanai šī piemēra skriptā. Saglabājiet attēlus tajā pašā vietā, kur izveidosiet pitona failu, lai ieviestu simulatoru.

Kauliņu ripināšanas simulatora ar GUI izveides veids ir parādīts šajā skriptā. Lai izveidotu GUI lietojumprogrammas, Python pastāv daudzi moduļi. Šajā skriptā Tkinter modulis tiek izmantots, lai ieviestu GUI balstītu kauliņu ripināšanas simulatoru. Attēls un ImageTk moduļi tiek izmantoti skriptā, lai parādītu kauliņu attēlus. The nejaušs moduli izmanto, lai nejauši izvēlētos kauliņu attēlu. Skripta sākumā objekts Tkinter ir izveidojis, lai noteiktu loga izmēru un vietu, kur tiks parādīts kauliņu attēls. Šeit loga pozīcija ir iestatīta centralizēti. Pēc tam saraksta mainīgais ir deklarējis sešus kauliņu attēlu nosaukumus. nejaušs.funkcija choice () tiek izmantota, lai nejauši izvēlētos vienu attēla nosaukuma indeksu no saraksta un iegūtu attēla nosaukumu, pamatojoties uz indeksa vērtību. expand = True funkcijai pack () ir izmantota, lai pievienotu papildu vietu, logā pievienojot logrīku. Logā ir pievienota etiķete, lai parādītu kauliņu attēlu, un logā ir pievienota poga, lai parādītu nākamo kauliņu attēlu. The jāmet kauliņš() funkcija ir saistīta ar pogu, lai ģenerētu nākamo kauliņu attēlu. Šī funkcija tiks izsaukta, kad lietotājs nospiedīs vai noklikšķinās uz 'JĀMET KAULIŅŠ' pogu.

# Importējiet Tkinter moduli
importa tkinter
# Importēt Image un ImageTk moduļus
no PIL importa attēla, ImageTk
# Importēt izlases moduli
importēt izlases veidā
# Definējiet objektu, lai parādītu lietojumprogrammas galveno logu
win = tkinter.Tk ()
# Iestatiet galvenā loga nosaukumu
uzvarēt.nosaukums ('Rolling Dice')
# Iestatiet galvenā loga augstumu un platumu
uzvarēt.ģeometrija ('350x280')
# Iestatiet loga pozīciju
uzvarēt.eval ('tk :: VietaLogu . centrs ')
# Definējiet sarakstu ar sešiem kauliņu attēlu nosaukumiem
kauliņu_attēli = ['d1.png ',' d2.png ',' d3.png ',' d4.png ',' d5.png ',' d6.png ']
# Izveidojiet jebkuru indeksu no 0 līdz 6 nejauši, lai iegūtu pašreizējo kauliņu attēlu
img = ImageTk.PhotoImage (attēls.atvērts (nejaušs.izvēle (kauliņu attēli)))
# Definējiet etiķeti, lai parādītu atlasīto attēlu
lbl_image = tkinter.Iezīme (win, image = img)
lbl_image.attēls = attēls
# Iestatiet etiķetes logrīku vecāku logā
lbl_image.iepakojums (izvērst = patiess)
# Definējiet funkciju, lai mainītu kauliņu attēlu, noklikšķinot uz pogas
def roll_the_dice ():
img = ImageTk.PhotoImage (attēls.atvērts (nejaušs.izvēle (kauliņu attēli)))
# atjaunināt attēlu
lbl_image.konfigurēt (attēls = img)
# saglabāt atsauci
lbl_image.attēls = attēls
"
Definējiet pogu, iestatiet pogas tekstu un iestatiet komandu
lai izsauktu funkciju roll_the_dice ()
"
btn = tkinter.Poga (win, text = 'ROLL THE DICE', komanda = roll_the_dice)
# Iestatiet pogu vecāku logā
btn.iepakojums (izvērst = patiess)
# Lai atvērtu galveno logu, zvaniet uz Tkinter galveno logu
uzvarēt.mainloop ()

Izeja:

Tāpat kā iepriekšējais piemērs, kauliņu attēls tiks izvēlēts nejauši katru reizi, kad tiek nospiesta poga. Nākamajā izvadā sešu kauliņu attēls ir izveidots pēc skripta izpildes.

Pēc pogas nospiešanas ir izveidots trīs kauliņu attēls.

Secinājums:

Šajā apmācībā ir izskaidroti divi dažādi veidi, kā izveidot kauliņu ripināšanas simulatoru, izmantojot Python skriptu. Tas palīdzēs lasītājiem uzzināt, kā šāda veida lietojumprogrammas var ieviest Python.

Kā lietot GameConqueror Cheat Engine Linux
Rakstā ir sniegts ceļvedis par GameConqueror apkrāptu dzinēja izmantošanu Linux. Daudzi lietotāji, kas spēlē spēles operētājsistēmā Windows, bieži izm...
Labākie Linux spēļu konsoles emulatori
Šajā rakstā tiks uzskaitīta populārā Linux spēļu konsoles atdarināšanas programmatūra. Emulācija ir programmatūras saderības slānis, kas atdarina spēļ...
Labākie Linux spēļu draiveri 2021. gadā
Linux operētājsistēma ir gājusi tālu no sākotnējā, vienkāršā uz serveriem balstītā izskata. Šī operētājsistēma pēdējos gados ir ārkārtīgi uzlabojusies...