Python

Bangun simulator pelempar dadu dengan Python

Bangun simulator pelempar dadu dengan Python
Dadu adalah kubus sederhana yang menghasilkan angka dari 1 hingga 6, dan simulator dadu adalah model komputer yang melempar dadu untuk pengguna. Simulator pelempar dadu dapat diimplementasikan dengan berbagai cara oleh Python. Enam gambar akan diperlukan untuk membuat yang akan digunakan dalam simulator. Modul Bantal Python digunakan untuk menampilkan gambar apa pun dengan Python yang tidak diinstal secara default. Simulator lempar dadu dapat diimplementasikan tanpa GUI dan GUI, seperti yang ditunjukkan dalam tutorial ini.

Memasang Modul Pemrosesan Gambar:

Modul pemrosesan gambar akan diperlukan jika Anda ingin membuat simulator lempar dadu dengan GUI. Jalankan perintah berikut dari terminal untuk memperbarui pip dan menginstal modul Bantal.

$ python3 -m pip install --upgrade pip
$ python3 -m pip install --upgrade Bantal

Contoh-1: Membuat simulator lempar dadu sederhana

Simulator pelempar dadu sederhana dapat dibuat menggunakan modul acak Python dalam tutorial ini. Script ini akan menghasilkan output dadu di terminal. Jadi, tidak ada modul pemrosesan gambar yang digunakan dalam skrip. Sebuah variabel bernama dadu digunakan untuk mengambil angka dari 1 hingga 6 secara acak. Itu melempar dadu() fungsi didefinisikan di sini untuk menghasilkan output berdasarkan nilai acak. Perulangan while tak terbatas digunakan dalam skrip untuk melempar dadu berkali-kali hingga pengguna mengetik apa pun tanpa 'y'.

# Impor modul acak
impor acak
# Tentukan loop tak terbatas
sementara Benar:
# Hasilkan angka acak antara 1 dan 6
dadu = acak.randint(1, 6)
# Tentukan fungsi untuk mencetak output berdasarkan nilai dadu
def roll_the_dice(dadu):
pengalih =
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 ]"

pengalih kembali.dapatkan (dadu)
# Panggil fungsinya
cetak(lempar_dadu(dadu))
# Minta pengguna untuk melempar dadu lagi
answer = input("Apakah kamu ingin melempar dadu lagi(y/n)? : ")
# Hentikan loop jika pengguna mengetik sesuatu tanpa 'y'
jika menjawab != 'y':
keluar(0)

Keluaran:

Output dari skrip di atas akan bervariasi di setiap iterasi loop untuk menggunakan bilangan bulat acak random. Pada output berikut, 5 dihasilkan pada iterasi pertama dari loop yang ditampilkan menggunakan 5 nol. Selanjutnya, pengguna mengetik 'y' untuk melanjutkan loop, dan 4 telah dihasilkan pada iterasi kedua loop dan menampilkan nilai menggunakan nol seperti sebelumnya. Script telah dihentikan ketika pengguna mengetik 'n'.

Contoh-2: Buat simulator pelempar dadu dengan gambar

Anda harus membuat enam gambar dadu sebelum menjalankan skrip contoh. Anda dapat membuat gambar dengan menggunakan aplikasi pembuat gambar apa pun. Enam gambar berikut telah dibuat untuk digunakan dalam skrip contoh ini. Simpan gambar di lokasi yang sama di mana Anda akan membuat file python untuk mengimplementasikan simulator.

Cara membuat simulator pelempar dadu dengan GUI ditunjukkan pada skrip berikut:. Banyak modul yang ada di Python untuk membuat aplikasi GUI. Modul Tkinter digunakan dalam skrip ini untuk mengimplementasikan simulator bergulir dadu berbasis GUI GUI. Gambar dan GambarTk modul digunakan dalam skrip untuk menampilkan gambar dadu. Itu acak modul digunakan untuk memilih gambar dadu secara acak. Di awal skrip, objek Tkinter telah dibuat untuk menentukan ukuran dan posisi jendela tempat gambar dadu akan ditampilkan. Di sini, posisi jendela telah diatur secara terpusat. Selanjutnya, variabel daftar telah dideklarasikan dengan enam nama gambar dadu. acak.choice() fungsi digunakan untuk secara acak memilih satu indeks nama gambar dari daftar dan mendapatkan nama gambar berdasarkan nilai indeks. expand=True telah digunakan dalam fungsi pack() untuk menambahkan ruang ekstra saat menambahkan widget di jendela. Label telah ditambahkan di jendela untuk menampilkan gambar dadu, dan tombol telah ditambahkan di jendela untuk menampilkan gambar dadu berikutnya. Itu melempar dadu() fungsi telah dikaitkan dengan tombol untuk menghasilkan gambar dadu berikutnya. Fungsi ini akan dipanggil ketika pengguna akan menekan atau mengklik tombol 'MELEMPAR DADU' tombol.

# Impor modul Tkinter
impor tkinter
# Impor modul Gambar dan ImageTk
dari PIL mengimpor Gambar, ImageTk
# Impor modul acak
impor acak
# Tentukan objek untuk menampilkan jendela utama aplikasi
menang = tkinter.Tk()
# Atur judul jendela utama
menang.judul('Melempar Dadu')
# Atur tinggi dan lebar jendela utama
menang.geometri('350x280')
# Atur posisi jendela
menang.eval('tk::PlaceWindow . pusat')
# Tentukan daftar dengan enam nama gambar dadu
dadu_gambar = ['d1.png', 'd2.png', 'd3.png', 'd4.png', 'd5.png', 'd6.png']
# Hasilkan indeks apa pun dalam 0 hingga 6 secara acak untuk mendapatkan gambar dadu saat ini
img= GambarTk.FotoGambar(Gambar.terbuka (acak.pilihan(dice_images)))
# Tentukan label untuk menampilkan gambar yang dipilih
lbl_image = tkinter.Label (menang, gambar = img)
lbl_image.gambar = img
# Atur widget label di dalam jendela induk
lbl_image.paket (perluas = Benar)
# Tentukan fungsi untuk mengubah gambar dadu saat tombol diklik
def roll_the_dice():
img= GambarTk.FotoGambar(Gambar.terbuka (acak.pilihan(dice_images)))
#perbarui gambar
lbl_image.konfigurasikan (gambar = img)
# simpan referensi
lbl_image.gambar = img
"
Tentukan tombol, atur teks tombol dan atur perintah
untuk memanggil fungsi roll_the_dice()
"
btn = tkinter.Tombol(menang, teks='ROLL THE DICE', perintah=roll_the_dice)
# Setel tombol di dalam jendela induk
btn.paket (perluas = Benar)
# Panggil loop utama Tkinter untuk membuka jendela utama
menang.putaran utama()

Keluaran:

Seperti contoh sebelumnya, gambar dadu akan dipilih secara acak setiap kali tombol akan ditekan. Pada output berikut, gambar dadu enam telah dihasilkan setelah menjalankan skrip.

Gambar dadu tiga telah dihasilkan setelah menekan tombol.

Kesimpulan:

Dua cara berbeda untuk membuat simulator pelempar dadu menggunakan skrip Python telah dijelaskan dalam tutorial ini. Ini akan membantu pembaca untuk mengetahui bagaimana jenis aplikasi ini dapat diimplementasikan dengan Python.

Mesin Game Gratis dan Sumber Terbuka untuk Mengembangkan Game Linux
Artikel ini akan membahas daftar mesin game sumber terbuka dan gratis yang dapat digunakan untuk mengembangkan game 2D dan 3D di Linux. Ada banyak mes...
Shadow of the Tomb Raider untuk Tutorial Linux
Shadow of the Tomb Raider adalah tambahan kedua belas untuk seri Tomb Raider - waralaba game aksi-petualangan yang dibuat oleh Eidos Montreal. Permain...
Cara Meningkatkan FPS di Linux?
FPS adalah singkatan dari Bingkai per detik. Tugas FPS adalah mengukur kecepatan bingkai dalam pemutaran video atau pertunjukan game. Dengan kata sede...