Pemrograman game adalah cara yang bagus untuk mempelajari cara memprogram. Anda menggunakan banyak alat yang akan Anda lihat di dunia nyata, plus Anda dapat bermain game untuk menguji hasil Anda. Gim ideal untuk memulai perjalanan pemrograman gim Python Anda adalah gunting kertas batu Show
Dalam tutorial ini, Anda akan mempelajari caranya
Bonus Gratis. 5 Pemikiran Tentang Python Mastery, kursus gratis untuk pengembang Python yang menunjukkan kepada Anda peta jalan dan pola pikir yang Anda perlukan untuk meningkatkan keterampilan Python Anda ke tingkat berikutnya Apa itu Gunting Kertas Batu?Anda mungkin pernah memainkan gunting kertas batu sebelumnya. Mungkin Anda telah menggunakannya untuk memutuskan siapa yang membayar makan malam atau siapa yang mendapatkan pemain pilihan pertama untuk sebuah tim Jika Anda tidak terbiasa, gunting kertas batu adalah permainan tangan untuk dua atau lebih pemain. Peserta mengatakan "batu, kertas, gunting" dan kemudian secara bersamaan membentuk tangan mereka menjadi bentuk batu (kepalan tangan), selembar kertas (telapak tangan menghadap ke bawah), atau gunting (dua jari terulur). Aturannya mudah
Sekarang setelah Anda memiliki aturannya, Anda dapat mulai berpikir tentang bagaimana mereka dapat menerjemahkan ke kode Python Hilangkan iklanMainkan Game Tunggal Rock Paper Scissors dengan PythonDengan menggunakan uraian dan aturan di atas, Anda dapat membuat permainan batu gunting kertas. Sebelum Anda masuk, Anda perlu mengimpor modul yang akan Anda gunakan untuk mensimulasikan pilihan komputer
Luar biasa. Sekarang Anda dapat menggunakan berbagai alat di dalam 2 untuk mengacak tindakan komputer dalam game. Sekarang apa? Ambil Masukan PenggunaMengambil masukan dari pengguna cukup mudah dengan Python. Tujuannya di sini adalah untuk menanyakan kepada pengguna apa yang ingin mereka pilih sebagai tindakan dan kemudian menetapkan pilihan itu ke sebuah variabel
Ini akan meminta pengguna untuk memasukkan pilihan dan menyimpannya ke variabel untuk digunakan nanti. Sekarang pengguna telah memilih tindakan, komputer perlu memutuskan apa yang harus dilakukan Jadikan Komputer PilihPermainan kompetitif gunting kertas batu melibatkan strategi. Alih-alih mencoba mengembangkan model untuk itu, Anda dapat menghemat waktu dengan membuat komputer memilih tindakan acak. Pilihan acak adalah cara terbaik agar komputer memilih nilai acak semu Anda dapat menggunakan _3 agar komputer secara acak memilih di antara tindakan
Ini memungkinkan elemen acak dipilih dari daftar. Anda juga dapat mencetak pilihan yang dibuat oleh pengguna dan komputer _Mencetak tindakan pengguna dan komputer dapat membantu pengguna, dan ini juga dapat membantu Anda melakukan debug nanti jika ada yang tidak beres dengan hasilnya Tentukan PemenangSekarang kedua pemain telah menentukan pilihannya, Anda hanya perlu cara untuk memutuskan siapa yang menang. Menggunakan blok 4 … 5 … 6, Anda dapat membandingkan pilihan pemain dan menentukan pemenang
Dengan membandingkan kondisi seri terlebih dahulu, Anda menyingkirkan beberapa kasus. Jika Anda tidak melakukannya, maka Anda perlu memeriksa setiap kemungkinan tindakan untuk 7 dan membandingkannya dengan setiap kemungkinan tindakan untuk 8. Dengan memeriksa kondisi seri terlebih dahulu, Anda dapat mengetahui apa yang dipilih komputer hanya dengan dua pemeriksaan bersyarat 8Dan itu dia. Semua digabungkan, kode Anda sekarang akan terlihat seperti ini
Anda sekarang telah menulis kode untuk menerima input pengguna, memilih tindakan acak untuk komputer, dan memutuskan pemenangnya. Tapi ini hanya memungkinkan Anda memainkan satu game sebelum program selesai berjalan Hilangkan iklanMainkan Beberapa Game Berturut-turutMeskipun satu permainan gunting kertas batu sangat menyenangkan, bukankah lebih baik jika Anda bisa memainkan beberapa permainan sekaligus? . Secara khusus, Anda dapat menggunakan _0 loop untuk bermain tanpa batas
Perhatikan garis yang disorot di atas. Penting untuk memeriksa apakah pengguna ingin bermain lagi dan ke 1 jika tidak. Tanpa pemeriksaan itu, pengguna akan dipaksa untuk bermain sampai mereka menghentikan konsol menggunakan Ctrl + C or a similar method.Skak untuk bermain lagi adalah skak terhadap senar 2. Tetapi memeriksa sesuatu yang spesifik seperti ini mungkin mempersulit pengguna untuk berhenti bermain. Bagaimana jika pengguna mengetik _3 atau 4? . Mereka mungkin melakukan semua huruf kecil, semua huruf besar, atau bahkan campuran keduanyaBerikut adalah hasil dari beberapa perbandingan string yang berbeda >>> _Hmm. Bukan itu yang Anda inginkan. Pengguna mungkin tidak terlalu senang jika mereka memasuki 3 berharap untuk bermain lagi tetapi dikeluarkan dari permainanJelaskan Tindakan Dengan if user_action == computer_action: print(f"Both players selected {user_action}. It's a tie!") elif user_action == "rock": if computer_action == "scissors": print("Rock smashes scissors! You win!") else: print("Paper covers rock! You lose.") elif user_action == "paper": if computer_action == "rock": print("Paper covers rock! You win!") else: print("Scissors cuts paper! You lose.") elif user_action == "scissors": if computer_action == "paper": print("Scissors cuts paper! You win!") else: print("Rock smashes scissors! You lose.") 6Karena perbandingan string dapat menyebabkan masalah seperti yang Anda lihat di atas, ada baiknya untuk menghindarinya sebisa mungkin. Namun, salah satu hal pertama yang diminta program Anda adalah agar pengguna memasukkan string. Bagaimana jika pengguna salah memasukkan _7 atau 8? >>> _Karena kapitalisasi penting, 9 dan 0 tidak sama. Salah satu solusi yang mungkin adalah menggunakan angka sebagai gantinya. Menetapkan setiap tindakan nomor dapat menyelamatkan Anda dari beberapa masalah
Ini memungkinkan Anda untuk mereferensikan tindakan yang berbeda dengan nomor yang ditetapkan. Bilangan bulat tidak mengalami masalah perbandingan yang sama dengan string, jadi ini bisa berhasil. Sekarang Anda dapat meminta pengguna memasukkan angka dan membandingkannya langsung dengan nilai tersebut 0Karena _9 mengembalikan sebuah string, Anda perlu mengonversi nilai yang dikembalikan menjadi bilangan bulat menggunakan 2. Kemudian Anda dapat membandingkan masukan untuk setiap tindakan di atas. Ini berfungsi dengan baik, tetapi mungkin Anda bergantung pada penamaan variabel dengan benar untuk melacaknya. Cara yang lebih baik adalah menggunakan _6 dan menentukan kelas tindakan Anda sendiriMenggunakan _6 memungkinkan Anda membuat atribut dan menetapkan nilai yang mirip dengan yang ditunjukkan di atas. Ini membantu membersihkan kode Anda dengan mengelompokkan tindakan ke dalam ruang namanya sendiri dan membuat kode lebih ekspresif 1Ini membuat _5 khusus yang dapat Anda gunakan untuk mereferensikan berbagai jenis tindakan yang Anda dukung. Ini bekerja dengan menetapkan setiap atribut di dalamnya ke nilai yang Anda tentukanPerbandingan masih mudah, dan sekarang mereka memiliki nama kelas yang berguna yang terkait dengannya >>> 2Karena nilai anggotanya sama, perbandingannya sama. Nama kelas juga memperjelas bahwa Anda ingin membandingkan dua tindakan Catatan. Untuk mempelajari lebih lanjut tentang 6, lihat Build Enumerations of Constants With Python's EnumAnda bahkan dapat membuat _5 dari 8>>> 3 _5 melihat nilai yang diteruskan dan mengembalikan 5 yang sesuai. Ini berguna karena sekarang Anda dapat mengambil input pengguna sebagai 8 dan membuat 5 darinya. Tidak perlu lagi khawatir tentang ejaanHilangkan iklanAlur (bagan) Program AndaMeskipun gunting kertas batu mungkin tampak tidak rumit, penting untuk mempertimbangkan dengan hati-hati langkah-langkah yang terlibat dalam memainkannya sehingga Anda dapat yakin bahwa program Anda mencakup semua kemungkinan skenario. Untuk proyek apa pun, bahkan yang kecil, akan sangat membantu untuk membuat bagan alur dari perilaku yang diinginkan dan mengimplementasikan kode di sekitarnya. Anda dapat memperoleh hasil yang serupa dengan menggunakan daftar berpoin, tetapi akan lebih sulit untuk menangkap hal-hal seperti loop dan logika kondisional Diagram alir tidak harus terlalu rumit atau bahkan menggunakan kode asli. Hanya menjelaskan perilaku yang diinginkan sebelumnya dapat membantu Anda memperbaiki masalah sebelum terjadi Berikut adalah diagram alur yang menggambarkan satu permainan gunting kertas batu Setiap pemain memilih aksi dan kemudian pemenang ditentukan. Diagram alir ini akurat untuk satu game seperti yang telah Anda kodekan, tetapi belum tentu akurat untuk game kehidupan nyata. Dalam kehidupan nyata, para pemain memilih tindakan mereka secara bersamaan daripada satu per satu seperti yang disarankan oleh diagram alur Namun, dalam versi kode, ini berfungsi karena pilihan pemain disembunyikan dari komputer, dan pilihan komputer disembunyikan dari pemain. Kedua pemain dapat membuat pilihan mereka pada waktu yang berbeda tanpa mempengaruhi keadilan permainan Bagan alir membantu Anda mengetahui kemungkinan kesalahan sejak dini dan juga memungkinkan Anda melihat apakah Anda ingin menambahkan lebih banyak fungsi. Sebagai contoh, berikut adalah flowchart yang menjelaskan cara bermain game berulang kali hingga pengguna memutuskan untuk berhenti Tanpa menulis kode, Anda dapat melihat bahwa diagram alur pertama tidak dapat diputar ulang. Pendekatan ini memungkinkan Anda mengatasi masalah seperti ini sebelum pemrograman, yang membantu Anda membuat kode yang lebih rapi dan mudah dikelola Pisahkan Kode Anda Menjadi FungsiSekarang setelah Anda menguraikan alur program Anda menggunakan bagan alur, Anda dapat mencoba mengatur kode Anda sehingga lebih mirip dengan langkah-langkah yang telah Anda identifikasi. Salah satu cara alami untuk melakukannya adalah dengan membuat fungsi untuk setiap langkah dalam bagan alur. Fungsi adalah cara yang bagus untuk memisahkan potongan kode yang lebih besar menjadi bagian yang lebih kecil dan lebih mudah dikelola Anda tidak perlu membuat fungsi agar pemeriksaan bersyarat dapat diputar lagi, tetapi Anda dapat melakukannya jika mau. Anda dapat memulai dengan mengimpor _2 jika Anda belum melakukannya dan menentukan kelas 5 Anda _4Mudah-mudahan sejauh ini semuanya tampak akrab. Sekarang inilah kode untuk _5, yang tidak menerima argumen apa pun dan mengembalikan 5 5Perhatikan bagaimana Anda menerima input pengguna sebagai 8 dan mendapatkan kembali 5. Pesan panjang untuk pengguna itu agak rumit. Apa yang akan terjadi jika Anda ingin menambahkan lebih banyak tindakan? Sebagai gantinya, Anda dapat menggunakan pemahaman daftar untuk menghasilkan sebagian dari input _6Sekarang Anda tidak perlu lagi khawatir tentang menambah atau menghapus tindakan di masa mendatang. Menguji ini, Anda dapat melihat bagaimana kode meminta pengguna dan mengembalikan tindakan yang terkait dengan nilai masukan pengguna >>> 7Sekarang Anda memerlukan fungsi untuk mendapatkan tindakan komputer. Seperti _5, fungsi ini seharusnya tidak menerima argumen dan mengembalikan 5. Karena nilai untuk _5 berkisar dari 2 hingga 3, Anda akan ingin membuat angka acak dalam rentang tersebut. _4 dapat membantu dengan itu _4 mengembalikan nilai acak antara minimum dan maksimum yang ditentukan (inklusif). Anda dapat menggunakan _6 untuk membantu mencari tahu apa yang harus menjadi batas atas dalam kode Anda _8Karena nilai _5 mulai menghitung dari 2, dan len() mulai menghitung dari 9, penting untuk melakukan 0Saat Anda menguji ini, tidak akan ada prompt. Ini hanya akan mengembalikan tindakan yang terkait dengan nomor acak >>> 9Terlihat bagus. Selanjutnya, Anda membutuhkan cara untuk menentukan pemenang. Fungsi ini akan mengambil dua argumen, tindakan pengguna dan tindakan komputer. Tidak perlu mengembalikan apa pun karena hanya akan menampilkan hasilnya ke konsol 0Ini sangat mirip dengan perbandingan pertama yang Anda gunakan untuk menentukan pemenang. Sekarang Anda bisa langsung membandingkan _5 jenis tanpa khawatir tentang string sial ituAnda bahkan dapat menguji ini dengan memberikan opsi berbeda ke 2 dan melihat apa yang dicetak>>> 1Karena Anda membuat tindakan dari angka, apa yang akan terjadi jika pengguna Anda mencoba membuat tindakan dari 3? >>> 2Ups. Anda tidak ingin itu terjadi. Di mana dalam bagan alur Anda dapat menambahkan beberapa logika untuk memastikan pengguna telah memasukkan pilihan yang valid? Masuk akal untuk memasukkan cek segera setelah pengguna membuat pilihan mereka Jika pengguna memasukkan nilai yang tidak valid, ulangi langkah untuk mendapatkan pilihan pengguna. Satu-satunya persyaratan nyata untuk pemilihan pengguna adalah antara 2 dan 3, inklusif. Jika input pengguna berada di luar rentang ini, maka pengecualian 7 akan dimunculkan. Untuk menghindari menampilkan pesan kesalahan default kepada pengguna, Anda dapat menangani pengecualianCatatan. Pengecualian bisa rumit. Untuk informasi lebih lanjut, lihat Pengecualian Python. Sebuah Pengantar Sekarang setelah Anda menentukan beberapa fungsi yang mencerminkan langkah-langkah dalam bagan alur Anda, logika game Anda jauh lebih tertata dan ringkas. Ini semua 0 loop Anda perlu diisi sekarang _3Bukankah itu terlihat jauh lebih bersih? . Ini membuat kode melanjutkan ke iterasi berikutnya dari loop daripada keluar darinya Hilangkan iklanGunting Kertas Batu … Spock KadalJika Anda pernah melihat The Big Bang Theory, maka Anda mungkin akrab dengan kadal gunting kertas batu Spock. Jika tidak, inilah diagram yang menggambarkan permainan dan aturan yang menentukan pemenang Anda dapat menggunakan alat yang sama yang Anda pelajari di atas untuk mengimplementasikan game ini. Misalnya, Anda dapat menambahkan ke _5 dan membuat nilai untuk kadal dan Spock. Maka Anda hanya perlu memodifikasi _5 dan 3 untuk memasukkan opsi ini. Memperbarui _2, bagaimanapun, akan lebih banyak pekerjaanAlih-alih menambahkan banyak pernyataan _4 … 5 … 6 ke kode Anda, Anda dapat menggunakan kamus untuk membantu menunjukkan hubungan antar tindakan. Kamus adalah cara yang bagus untuk menunjukkan hubungan nilai kunci. Dalam hal ini, kuncinya bisa berupa tindakan, seperti gunting, dan nilainya bisa berupa daftar tindakan yang dikalahkannyaJadi seperti apa ini untuk 2 Anda dengan hanya tiga pilihan? . Inilah tampilan kode Anda sebelumnya 0Sekarang, alih-alih membandingkan setiap _5, Anda dapat memiliki kamus yang menjelaskan kondisi kemenangan 5Anda tetap melakukan hal yang sama seperti sebelumnya dan mengecek kondisi dasi terlebih dahulu. Tetapi alih-alih membandingkan setiap 5, Anda malah membandingkan tindakan yang 03 mengalahkan 8. Karena pasangan kunci-nilai adalah daftar, Anda dapat menggunakan 05 untuk memeriksa apakah ada elemen yang berada di dalamnyaKarena Anda tidak lagi menggunakan pernyataan panjang _4 … 5 … 6, menambahkan tanda centang untuk tindakan baru ini relatif tidak merepotkan. Anda bisa mulai dengan menambahkan kadal dan Spock ke 5 _6Selanjutnya, tambahkan semua hubungan kemenangan dari diagram. Pastikan untuk melakukan ini di bawah _5 sehingga 11 akan dapat merujuk semua yang ada di 5 _7Perhatikan bagaimana sekarang setiap _5 memiliki daftar yang berisi dua elemen yang dikalahkannya. Dalam implementasi gunting kertas batu dasar, hanya ada satu elemenKarena Anda sengaja menulis _5 untuk mengakomodasi tindakan baru, Anda tidak perlu mengubah apa pun tentang kode itu. Hal yang sama berlaku untuk 3. Karena panjang _5 telah berubah, kisaran angka acak juga akan berubahLihatlah betapa lebih pendek dan lebih mudah dikelolanya kode sekarang. Untuk melihat kode lengkap untuk program lengkap Anda, perluas kotak di bawah ini Kode Spock Kadal Gunting Kertas BatuTampilkan/Sembunyikan _8Itu dia. Anda telah menerapkan Spock kadal gunting kertas batu dalam kode Python. Periksa ulang untuk memastikan Anda tidak melewatkan apa pun dan coba mainkan KesimpulanSelamat. Anda baru saja menyelesaikan game Python pertama Anda. Anda sekarang tahu cara membuat gunting kertas batu dari awal, dan Anda dapat memperluas jumlah kemungkinan tindakan dalam game Anda dengan sedikit usaha Dalam tutorial ini, Anda belajar caranya
Alat-alat ini akan terus membantu Anda selama banyak petualangan pemrograman Anda. Jika Anda memiliki pertanyaan, jangan ragu untuk menghubungi di bagian komentar di bawah Tandai sebagai Selesai Tonton Sekarang Tutorial ini memiliki kursus video terkait yang dibuat oleh tim Real Python. Tonton bersama dengan tutorial tertulis untuk memperdalam pemahaman Anda. Batu, Kertas, Gunting Dengan Python. Game Baris Perintah 🐍 Trik Python 💌 Dapatkan Trik Python singkat & manis yang dikirim ke kotak masuk Anda setiap beberapa hari. Tidak pernah ada spam. Berhenti berlangganan kapan saja. Dikuratori oleh tim Real Python Kirimi Saya Trik Python » Tentang Chris Wilkerson Chris adalah seorang Pythonista yang rajin dan menulis untuk Real Python » Lebih lanjut tentang ChrisSetiap tutorial di Real Python dibuat oleh tim pengembang sehingga memenuhi standar kualitas tinggi kami. Anggota tim yang mengerjakan tutorial ini adalah Aldren Daud Geir Arne Joanna Yakub Master Keterampilan Python Dunia Nyata Dengan Akses Tanpa Batas ke Python Nyata Bergabunglah dengan kami dan dapatkan akses ke ribuan tutorial, kursus video langsung, dan komunitas pakar Pythonista Tingkatkan Keterampilan Python Anda » Guru Keterampilan Python Dunia Nyata Bergabunglah dengan kami dan dapatkan akses ke ribuan tutorial, kursus video langsung, dan komunitas ahli Pythonista Tingkatkan Keterampilan Python Anda » Bagaimana menurut anda? Nilai artikel ini Tweet Bagikan Bagikan EmailApa takeaway # 1 Anda atau hal favorit yang Anda pelajari? Kiat Berkomentar. Komentar yang paling berguna adalah yang ditulis dengan tujuan belajar dari atau membantu siswa lain. dan dapatkan jawaban atas pertanyaan umum di portal dukungan kami Bisakah Anda membuat kode game dengan Python?Oleh karena itu, Python juga merupakan bahasa yang ideal untuk memulai petualangan Anda dalam membuat game , terlepas dari apakah Anda sudah fasih atau tidak. . Karena sintaksis Python yang ramah pendatang baru, pengembang dapat fokus pada dasar-dasar pemrograman game, bukan kompleksitas bahasa itu sendiri.
Bagaimana cara membuat game dengan kode Python?Berikut adalah contoh pembuatan jendela pygame sederhana. . import pygame pygame. init() layar = pygame. menampilkan. set_mode((400.500)) selesai = Salah sementara tidak dilakukan untuk acara di pygame. peristiwa. Dapatkan() jika acara. ketik == pygame. BERHENTI selesai = Benar Bisakah Anda menyalin dan menempelkan kode dengan Python?Untuk menyalin teks, cukup pilih dan tekan Ctrl-C (Command-C pada Mac) . Jika sorotan menandai pemilihan menghilang, itu normal dan itu berarti berhasil. Untuk menempel, gunakan Ctrl-V (Command-V di Mac).
Bagaimana Anda membuat kode game berbasis teks dengan Python?Langkah 1. IDLE Python. Buka python IDLE Anda, ini akan membuka shell python Langkah 2. Buat File Baru. . Langkah 3. Permainan Fungsi. . Langkah 4. Buat Pernyataan Jika. . Langkah 5. Pernyataan Lain. . Langkah 6. Jika Pernyataan. . Langkah 7. Jika Pernyataan. . Langkah 8. Buat Pernyataan Lain |