ランダム:ロボットにサイコロを振らせよう!
Pythonゲームに意外性とチャンスを取り入れよう!randomモジュールを使って、サイコロの目を決めたり、リストからランダムにアイテムを選ぶ方法を学びます。
ゲームデザイナーのみなさん、おかえりなさい! 🎲
ゲームの展開が最初から全部わかっていたら、きっとつまらないですよね。コインを投げたら毎回表しか出ないとか、敵キャラクターがいつも全く同じルートしか歩かないゲームを想像してみてね。ゲームには 「ドキドキする意外性(ランダム)」 が必要です!
今日は、Pythonロボットの頭の中に魔法の「見えないサイコロ」を用意して、ランダムな選択をさせる方法を学びましょう。
そのために、random モジュールを使います!
魔法のサイコロ(ランダムの仕組み)#
図形を描くために turtle ライブラリを借りたのと同じように、コードにランダムさを加えるために import random と入力します。
graph TD
Start([ゲーム開始]) --> Choice["選択肢: ['グー', 'チョキ', 'パー']"]
Choice --> Random["random.choice() が魔法のサイコロを振る"]
Random --> Result{"何が出たかな?"}
Result -->|パターン 1| Rock["✊ グー!"]
Result -->|パターン 2| Paper["✋ パー!"]
Result -->|パターン 3| Scissors["✌️ チョキ!"]
random ライブラリの中にある、よく使う2つの魔法を紹介するね:
1. Choice(チョイス):リストからランダムに1つ選ぶ#
選択肢のリストから、ロボットにランダムで1つを選び出させることができます:
import random
options = ["グー", "チョキ", "パー"]
robot_choice = random.choice(options)
print("ロボットの手は: " + robot_choice)pythonこのコードを実行するたびに、ロボットは違う手を出してくるかもしれないよ! ✊ ✋ ✌️
2. Randint(ランドイント):指定した範囲から数字を選ぶ#
一般的な6面ダイス(サイコロ)を振るように、1から6までのランダムな整数(数字)を取り出します:
import random
dice_roll = random.randint(1, 6)
print("サイコロの目は: " + str(dice_roll) + "! 🎲")python自分でやってみよう! 🎮#
Pythonの画面を開いて、占いロボットを作ってみよう:
import random
fortunes = [
"今日はきらきら光るコインを拾うでしょう! 🪙",
"水たまりに入らないように気をつけてね! 🌧️",
"かわいい犬がしっぽを振って近づいてくるよ! 🐶",
"新しいプログラミングの裏技を覚えるよ! 💻"
]
input("ロボットに Yes/No の質問をして、Enterキーを押してね... ")
print("占い結果: " + random.choice(fortunes))pythonこのプログラムを何回か実行して、占いの言葉が変わるか試してみてね!
次回は、電話番号やアイテムのステータスを素早く調べるためのロボットの秘密のメモ帳、「辞書(Dictionaries)」について学ぶよ。お楽しみに!