Python入門プログラミングウィジェット-デジタルゲームを当てる
3088 ワード
これは簡単なゲームで、Pythonの知識はかなり少ないが、Pythonの基本的な文法を理解する必要がある.
プログラム全体のアルゴリズムフローは以下のように簡単に紹介されている(VSでフローチャートを描きたくない、怠け者):
デジタルゲームを当てる以上、まず実現すべきは、数字を設定し、プレイヤーに推測の数字を入力させることです.最も簡単なのは、固定された数字を設定し、プレイヤーの入力と比較して正しいかどうかの結論を出すと、3行のコードが実現し、それは面白くありません.では、このコードを改善するには、固定リストで数字を設定することができ、実現も難しくなく、コードを見てから推測しても退屈になります.コードをさらに改善し、ランダムシーケンスでrandomを呼び出すのは良い選択です.大きさを比較する一環も最も簡単な一歩一歩から改善して、最初からif文を思い浮かべてよくて、等しい、大きい、小さい情況に対して、playerのために一連のヒント語を印刷して、しかしこのような推測は1回でgame overのゲームのメカニズムもあまりにもlowで、私は菜鳥ですが、このような侮辱にも耐えられません.コードを改善して、whileサイクルで3回遊ぶことを実現した後、ゲームが終わって、実現するのも難しくなくて、if文のネストにほかならなくて、構想を整理して書くのもあまり苦労しません.もちろん私はまだ菜鳥の段階で、コード全体が美しくなくて、更にどんな風格を言うまでもありません...みんなは我慢して見ているが,喜ばないなら噴き出さないでください.
実はここまでゲームは简単に游ぶことができるようで、私は比较的に中毒があって1时间游ぶことができます.しかし3回の机会が尽きた后に、更に游びたいのはいつも解釈器の中でF 5を少し要して、本当に気持ちが悪くて、Restartが再び游ぶ命令が现れることができるかどうか、そこで私は书くことに着手します.この簡単な問題を一日考えて、料理が怖いと言わざるを得なかった.restartを使用する場合は、playerが値を入力したときにコードを再実行する必要があります.簡単に聞こえますが、forループでいいという人もいれば、回数パラメータをクリアして、運転を続けることができるという人もいます.しかしPythonはアセンブリのjumpがありますか?yeild私はまた違和感を感じて、実現できません.以前のプログラムセグメントにはwhileループが含まれていたので、forループで試した変数の設定が混乱していたし、whileループ後にreturn回数変数をクリアしてみたが、実現しなかった.私は長い間考えていましたが、このコードを絶えず循環しなければならないと思います.関数を絶えず呼び出す概念と同じです.では、このコードをすべてcompare関数にカプセル化して、いつでも呼び出せばいいと思います.
問題はまた来て、確かにgame overの後でもう一度遊ぶことができますが、ただ1回遊ぶだけで、あなたが呼び出したコードは1回しか実行しないので、上のコードだけを呼び出します.つまり、私の呼び出しコードもずっとループしなければなりません.私は手間を省くために(正直に言うと、他の高級な文法はできません)、forループにwhile else文を埋め込んで簡単に書きました.だから、ソースコードを見ると、私はゲームを10ラウンドさせただけで、私は30回以上我慢して遊んでいないと思います.もちろん、あなたももっと大きな値を設定することができます.無限ループに近い大きさです.もちろんゲームを続けるかどうかは、選択できますが、プレイヤーは再ゲームを拒否することを選択して直接終了します.この部分はwhile else文で実現されています.分かりやすいです.
ここまでは非常に粗末なゲームが完成して、スタイルがなくて美感がなくて構造がなくて、無限の最適化のコードが必要です...菜鳥共励.絶対に菜鳥が直接手に入れた小さなゲームです.
プログラム全体のアルゴリズムフローは以下のように簡単に紹介されている(VSでフローチャートを描きたくない、怠け者):
デジタルゲームを当てる以上、まず実現すべきは、数字を設定し、プレイヤーに推測の数字を入力させることです.最も簡単なのは、固定された数字を設定し、プレイヤーの入力と比較して正しいかどうかの結論を出すと、3行のコードが実現し、それは面白くありません.では、このコードを改善するには、固定リストで数字を設定することができ、実現も難しくなく、コードを見てから推測しても退屈になります.コードをさらに改善し、ランダムシーケンスでrandomを呼び出すのは良い選択です.大きさを比較する一環も最も簡単な一歩一歩から改善して、最初からif文を思い浮かべてよくて、等しい、大きい、小さい情況に対して、playerのために一連のヒント語を印刷して、しかしこのような推測は1回でgame overのゲームのメカニズムもあまりにもlowで、私は菜鳥ですが、このような侮辱にも耐えられません.コードを改善して、whileサイクルで3回遊ぶことを実現した後、ゲームが終わって、実現するのも難しくなくて、if文のネストにほかならなくて、構想を整理して書くのもあまり苦労しません.もちろん私はまだ菜鳥の段階で、コード全体が美しくなくて、更にどんな風格を言うまでもありません...みんなは我慢して見ているが,喜ばないなら噴き出さないでください.
実はここまでゲームは简単に游ぶことができるようで、私は比较的に中毒があって1时间游ぶことができます.しかし3回の机会が尽きた后に、更に游びたいのはいつも解釈器の中でF 5を少し要して、本当に気持ちが悪くて、Restartが再び游ぶ命令が现れることができるかどうか、そこで私は书くことに着手します.この簡単な問題を一日考えて、料理が怖いと言わざるを得なかった.restartを使用する場合は、playerが値を入力したときにコードを再実行する必要があります.簡単に聞こえますが、forループでいいという人もいれば、回数パラメータをクリアして、運転を続けることができるという人もいます.しかしPythonはアセンブリのjumpがありますか?yeild私はまた違和感を感じて、実現できません.以前のプログラムセグメントにはwhileループが含まれていたので、forループで試した変数の設定が混乱していたし、whileループ後にreturn回数変数をクリアしてみたが、実現しなかった.私は長い間考えていましたが、このコードを絶えず循環しなければならないと思います.関数を絶えず呼び出す概念と同じです.では、このコードをすべてcompare関数にカプセル化して、いつでも呼び出せばいいと思います.
問題はまた来て、確かにgame overの後でもう一度遊ぶことができますが、ただ1回遊ぶだけで、あなたが呼び出したコードは1回しか実行しないので、上のコードだけを呼び出します.つまり、私の呼び出しコードもずっとループしなければなりません.私は手間を省くために(正直に言うと、他の高級な文法はできません)、forループにwhile else文を埋め込んで簡単に書きました.だから、ソースコードを見ると、私はゲームを10ラウンドさせただけで、私は30回以上我慢して遊んでいないと思います.もちろん、あなたももっと大きな値を設定することができます.無限ループに近い大きさです.もちろんゲームを続けるかどうかは、選択できますが、プレイヤーは再ゲームを拒否することを選択して直接終了します.この部分はwhile else文で実現されています.分かりやすいです.
ここまでは非常に粗末なゲームが完成して、スタイルがなくて美感がなくて構造がなくて、無限の最適化のコードが必要です...菜鳥共励.絶対に菜鳥が直接手に入れた小さなゲームです.
def compare(i):
import random
secret = random.randint(1,10)
temp = input("guess the number in my heart(from 1 to 10):
")
guess = int(temp)
if guess == secret:
print("amazing,you are right")
else:
if guess > secret:
print("worring,it's bigger,you have the last two chances")
else:
print('OMG! so foolish you are.litter!!The last two chances ~~')
while i < 2:
temp = input("guess again please~~:
")
guess = int(temp)
i=i+1
if guess == secret:
print("ok,you win.")
break
elif (guess > secret):
if i==1:
print("guess it by your heart please!!bigger!last chance")
else:
print("see you latter!biggerererer!")
elif (guess < secret):
if i==1:
print('want to fuck someone!wrong ,again,litter!last chance')
else:
print('you make me angery,say goodbye to games.')
print( 'game over')
return
compare(0)
n=0
while n<10:
restart = input('do you want to restart?please write 1 or 0:')
n=n+1
if restart==1:
compare(0)
else:
print('see you latter')
break