Pernahkah anda mendapati diri anda ketawa tanpa kawalan sambil mengisi perkataan rawak untuk mencipta cerita yang tidak masuk akal? Jika ya, anda mungkin telah mengalami kegembiraan Mad Libs, permainan perkataan klasik yang telah menghiburkan orang ramai dari semua peringkat umur sejak tahun 1950-an.
Tetapi bagaimana jika saya memberitahu anda bahawa permainan mudah ini juga boleh menjadi pintu masuk anda ke dunia pengaturcaraan Python yang menarik?
Apa itu Mad Libs?
Mad Libs, pada terasnya, ialah permainan bercerita yang mengisi tempat kosong. Pemain digesa untuk memberikan perkataan jenis tertentu (kata nama, kata kerja, kata adjektif, dll.) tanpa mengetahui konteks cerita.
Ketahui tentang gelung di sini: Gelung Python: Panduan Komprehensif untuk Pemula
Kata-kata ini kemudiannya diselitkan ke dalam naratif pratulis, selalunya menghasilkan kisah komedi dan mengarut yang mencetuskan ketawa dan kreativiti.
Tetapi Mad Libs lebih daripada sekadar sumber hiburan. Apabila diterjemahkan ke dalam projek pengaturcaraan, ia menjadi alat pengajaran yang berkuasa, menawarkan pengkod yang bercita-cita tinggi cara yang menyeronokkan dan menarik untuk mempelajari konsep pengaturcaraan asas.
Sediakan Persekitaran Python Anda
Untuk bermula, pastikan anda memasang Python pada komputer anda. Anda boleh memuat turunnya dari laman web rasmi Python. Untuk projek ini, kami akan menggunakan Python 3.12.7.
Setelah Python dipasang, buka editor teks kegemaran anda atau Persekitaran Pembangunan Bersepadu (IDE). Pilihan popular untuk pemula termasuk IDLE (yang disertakan dengan Python), Visual Studio Code atau PyCharm.
Untuk projek ini, saya akan menggunakan Pycharm.
Membina Permainan Mad Libs: Langkah demi Langkah
Mari pecahkan permainan Mad Libs kami kepada langkah yang boleh diurus. Kami akan mulakan dengan versi asas dan secara beransur-ansur menambah lebih banyak ciri untuk menjadikannya lebih interaktif dan menarik.
Anda boleh mendapatkan kod lengkap di sini.
Untuk menjalankan permainan ini, anda perlu memasang beberapa kebergantungan dan salah satunya ialah perpustakaan colorama. Anda boleh melakukan ini dengan menjalankan:
pip install colorama
Import beberapa perpustakaan yang kami perlukan untuk projek ini termasuk, ramdom, os colorama
import random import os from colorama import init, Fore, Style
Seterusnya kami akan menggunakan init() yang membolehkan kami menggunakan output berwarna untuk meningkatkan antara muka pengguna, seperti memaparkan mesej alu-aluan dalam cyan, ralat dalam warna merah dan cerita yang telah siap dalam warna putih dengan gaya yang terang.
- Membuat Templat Cerita
Pertama, kami akan menentukan templat cerita kami. Ini akan menjadi rentetan dengan ruang letak untuk perkataan yang kami mahu pemain diisi. Berikut ialah contoh:
story_template = """ Once upon a time, in a {adjective} {noun}, there lived a {adjective} {noun}. Every day, they would {verb} to the {noun} and {verb} with their {adjective} {noun}. One day, something {adjective} happened! They found a {adjective} {noun} that could {verb}! From that day on, their life became even more {adjective} and full of {noun}. """
- Mengumpul Jenis Perkataan
Seterusnya, kami akan membuat senarai jenis perkataan yang kami perlukan untuk cerita kami:
word_types = ["adjective", "noun", "adjective", "noun", "verb", "noun", "verb", "adjective", "noun", "adjective", "adjective", "noun", "verb", "adjective", "noun"]
- Mendorong Pemain untuk Kata-kata
Sekarang, mari buat fungsi untuk menggesa pemain untuk perkataan:
def get_word(word_type): return input(f"Enter a(n) {word_type}: ") def collect_words(word_types): return [get_word(word_type) for word_type in word_types]
- Pengisian Cerita
Dengan perkataan yang dikumpul, kami boleh mengisi templat cerita kami:
def fill_story(template, words): for word in words: template = template.replace("{" + word_types[words.index(word)] + "}", word, 1) return template
- Menyatukan Semuanya
Mari kita cipta fungsi utama untuk menjalankan permainan kami:
def play_mad_libs(): print("Welcome to Mad Libs!") print("I'll ask you for some words to fill in the blanks of our story.") words = collect_words(word_types) completed_story = fill_story(story_template, words) print("\nHere's your Mad Libs story:\n") print(completed_story) if __name__ == "__main__": play_mad_libs()
Kini kami mempunyai versi kerja asas permainan Mad Libs kami! Tetapi kita tidak berhenti di sini. Kami boleh menjadikannya lebih menarik dan mesra pengguna.
Mempertingkatkan Permainan
Menambah Templat Berbilang Cerita
Untuk memastikan permainan itu menarik, mari tambahkan berbilang templat cerita:
import random story_templates = [ # ... (add your original story template here) """ In a {adjective} galaxy far, far away, a {adjective} {noun} embarked on a {adjective} quest. Armed with a {adjective} {noun}, they set out to {verb} the evil {noun} and save the {noun}. Along the way, they encountered a {adjective} {noun} who taught them to {verb} with great skill. In the end, they emerged {adjective} and ready to face any {noun} that came their way. """, # ... (add more story templates as desired) ] def choose_random_template(): return random.choice(story_templates)
Melaksanakan Ciri Main Lagi
Mari tambahkan pilihan untuk pemain bermain berbilang pusingan:
def play_again(): return input("Would you like to play again? (yes/no): ").lower().startswith('y') def mad_libs_game(): while True: template = choose_random_template() word_types = extract_word_types(template) play_mad_libs(template, word_types) if not play_again(): print("Thanks for playing Mad Libs!") break def extract_word_types(template): return [word.split('}')[0] for word in template.split('{')[1:]]
Menambah Pengendalian Ralat
Untuk menjadikan permainan kami lebih mantap, mari tambahkan beberapa pengendalian ralat:
def get_word(word_type): while True: word = input(f"Enter a(n) {word_type}: ").strip() if word: return word print("Oops! You didn't enter anything. Please try again.")
Meningkatkan Pengalaman Pengguna
Mari tambahkan sedikit warna dan pemformatan untuk menjadikan permainan kami lebih menarik secara visual:
from colorama import init, Fore, Style init() # Initialize colorama def print_colored(text, color=Fore.WHITE, style=Style.NORMAL): print(f"{style}{color}{text}{Style.RESET_ALL}") def play_mad_libs(template, word_types): print_colored("Welcome to Mad Libs!", Fore.CYAN, Style.BRIGHT) print_colored("I'll ask you for some words to fill in the blanks of our story.", Fore.YELLOW) words = collect_words(word_types) completed_story = fill_story(template, words) print_colored("\nHere's your Mad Libs story:\n", Fore.GREEN, Style.BRIGHT) print_colored(completed_story, Fore.WHITE, Style.BRIGHT) **Saving Stories** Let's give players the option to save their stories: import os def save_story(story): if not os.path.exists("mad_libs_stories"): os.makedirs("mad_libs_stories") filename = f"mad_libs_stories/story_{len(os.listdir('mad_libs_stories')) + 1}.txt" with open(filename, "w") as file: file.write(story) print_colored(f"Your story has been saved as {filename}", Fore.GREEN) def play_mad_libs(template, word_types): # ... (previous code) if input("Would you like to save this story? (yes/no): ").lower().startswith('y'): save_story(completed_story)
Jalankan Kod
Pertama, pastikan anda telah memasang Python pada sistem anda. Anda boleh menyemak ini dengan membuka terminal dan menaip.
python --version
atau
python3 --version
Ini sepatutnya mengembalikan versi Python yang dipasang pada sistem anda.
Jika Python dipasang, anda harus menjalankan skrip menggunakan penterjemah Python. Daripada berlari.
./first_test.py
Anda harus berlari:
python first_test.py
atau jika anda menggunakan Python 3 secara khusus:
python3 first_test.py
Selain itu, pastikan bahawa fail mempunyai kebenaran yang betul untuk dilaksanakan. Anda boleh menetapkan ini dengan:
chmod +x first_test.py<br>
Kesimpulan
Tahniah! Anda kini telah mencipta permainan Mad Libs yang interaktif, berwarna-warni dan kaya dengan ciri dalam Python. Projek ini telah memperkenalkan anda kepada beberapa konsep pengaturcaraan penting:
- 文字列操作
- ユーザーの入力と出力
- 関数とモジュール式プログラミング
- リストとリスト内包表記
- ファイル I/O 操作
- エラー処理
- サードパーティのライブラリ (colorama)
- ランダム選択
- while ループと制御フロー
このゲームを構築することで、楽しいものを作成しただけでなく、より高度な Python プロジェクトのための強固な基盤を築くこともできました。熟練したプログラマーになるための鍵は練習と実験であることを忘れないでください。このゲームを変更したり、新しい機能を追加したり、これらのコンセプトを使用してまったく新しいプロジェクトを作成したりすることを恐れないでください!
Python の学習を続けるときは、オブジェクト指向プログラミング、グラフィカル ユーザー インターフェイス (GUI)、Django や Flask などのフレームワークを使用した Web 開発など、より高度なトピックを検討することを検討してください。
ここで学んだスキルは、ソフトウェア開発のより複雑な領域への優れた出発点として役立ちます。
コーディングを楽しんでください。そして、あなたの Mad Libs の冒険が笑いと学びで満たされますように!
リソース
- Folium を始めましょう
- Visual Studio コードに必須の 20 の Python 拡張機能
- Web スクレイピングとデータ抽出に Python を使用する
- Python 入門
- Folium と Python を使用したインタラクティブなマップの作成
以上がPython でインタラクティブな Mad Libs ゲームを構築する: 初心者ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

Python 3.6のピクルスファイルのロードレポートエラー:modulenotFounderror:nomodulenamed ...

風光明媚なスポットコメント分析におけるJieba Wordセグメンテーションの問題を解決する方法は?風光明媚なスポットコメントと分析を行っているとき、私たちはしばしばJieba Wordセグメンテーションツールを使用してテキストを処理します...

正規表現を使用して、最初の閉じたタグと停止に一致する方法は? HTMLまたは他のマークアップ言語を扱う場合、しばしば正規表現が必要です...


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

Dreamweaver Mac版
ビジュアル Web 開発ツール

メモ帳++7.3.1
使いやすく無料のコードエディター
