プログラミング

【python】条件分岐ifとループで簡単なゲーム作成

どうも多浪Fランぼっち底辺大学生です。

今回はpyhon(パイソン)で簡単なゲームを作成していこうと思います。

python初心者の方は見て損はないと思います( ^ω^)

作成するゲームの内容

「aとbが競争するのでどちらが先にゴールするかを当てるゲーム」を作成します

内容は以下の段階に分けて考えます。

  1. aとbのスタート地点は同じ
  2. ゴール地点を固定
  3. aとbを選択させる(同着予想の場合c)
  4. aとbが進む速さは特定の範囲内でランダムとする
  5. 途中経過を表示(簡易の文字 “>” , “@” を使用する)
  6. 1回進むごとに1秒処理に間を空ける
  7. 結果の判定・表示

参考にした書籍

今回参考にした書籍は「ゼロからやさしく始めるpython入門(クジラ飛行机 著)」です。

余談なのですが、わたくしがpythonを学ぶ際に最初に手にした参考書です。

完全入門向けで丁寧な構成になっており、初心者でも無理なく学べる一冊です。

個人的に「ゼロからやさしく始めるpyhon入門」と「progate(プロゲート)」の2つを利用することで、ある程度基礎が出来上がるはずです。

当参考書はこの記事で紹介するような簡易のゲームのほか、実際にキーボード操作などによるゲーム作成コードなども含まれており、充実した内容になっています。

初心者にやさしく・やる気を出させてくれる1冊です。

使用するライブラリ・関数

簡単なゲーム作成と言うことで難しい関数やライブラリは登場しません。

ライブラリ

今回使用するライブラリは2つです。

  • random
  • time

関数

関数は以下の6つです。

  • from
  • import
  • print()
  • input()
  • while()
  • if(),else

ゲームのソースコード

実行結果

実行結果は以下の様になります(画像ですみません)。

「敗北者じゃけぇ!!」が出せなくて悔しいですね(笑)

こんな感じで表示されたらgood!!

少し解説

1・2行目はライブラリの中にある関数を読み込んでいます。

  • from ライブラリ import 関数名

while(ループ)により、aまたはbのどちらかがgoalの値に達するまで繰り返します。

a+=a+randint(1,5)はaに格納されている値と乱数1~5を加算し変数aの値を更新していきます。

a=a+乱数

a=0 乱数を1の定数とすると

a=0+1 a=1

a=1+1 a=2

a=2+1 a=3

a=3+1 a=4

って感じですね。

 

  • randint(x,y) : x~yにおける乱数

time(1)によりループ1巡が終わる際に1秒の間を空けます。

これを書くことで実行結果の表示処理(print())が高速でなくゆとりを持つことが出来ます。

プラスα

上記のソースコードをアレンジしてもう少ししっかりした内容にしたいと思います。

「もう少ししっかりした・・・」ってなんやねんって感じですけど、書いてイキます(汗)

7~22行にかけて処理を追加(プラスα)してみました。

7~15行はinput()で数字以外を受け取った時に何度もループを繰り返すようになっています。

17~22行はinput()で「aかb」のどちらかを必ず選ばせるようにしました。

人気ブログランキング
関連記事