お帰りなさい｡
ランダムゲームにはどう対処したのですか？
解決できたのでしょうか？
ここで試してみましょう｡
では､ テストパイルを使ってみます｡ 実は､ 混乱しないように名前を変えておきましょう｡
ランダムnot a ransomランダムゲームに改名するby｡
わかりました｡
さて､ ここでは､ まず､ できるようになりたい｡
では､ 何が必要かを考えてみよう｡
だから､ まず必要なのは
生成する｡
1から10までの数字｡
では､ 次にやるべきことは､ ユーザーからの入力を得ることですね｡
そして､ 入力チェックのようなものを行いたい｡
そこで､ その入力が1から10までの数字であることを確認し､ 次にとします｡
かどうかを確認する｡
数字が正しい推測の場合｡
それ以外は｡
もう一度聞く｡
だから､ それは私たちが書ける良いプログラムのように思えます｡
では､ どうすればいいのか｡
さて､ 最初の作業は､ 1から10までの数字を生成することです｡
ここからランダムライブラリをインポートして､ 具体的にはそこの家賃intを絶対欲しいと思っているのはわかる｡
だから､ 私たちが見てきたランダムインポートレントのヒントから言えることです｡
そして､ ここで私は数字を生成することができます｡
だから､ 答えは家賃と言うことにしておこう｡
1から10まで｡
これは機械が生成した乱数で､ これを推測してみる必要があります｡
次に､ ユーザーからの入力を取得する必要があります｡
では､ どうすればいいのか｡
まあ､ シンプルでしょう？
ユーザーからの入力として推測を得ることができ､ プロンプトを得ることができる｡
そこで､ 1番から10番までの数字を当てるということにします｡
よし､ いい感じだ｡
1から10までの数字であることを入力するチェックはどうでしょうか｡
ユーザーが推測している間､ ループを続けたいので､ 今ここで少しチェックする必要があります｡
無限ループにならないように､ 必ず抜け出す必要があるwhile trueループを行うつもりです｡
そして､ ループの最初の部分で､ ユーザーが何を入力したかをチェックしたい｡
だから､ イフ・ゲイズと言うんです｡
さて､ 入力が文字列であることはすぐにわかりますので､ まずこれをINTに変換することを確認する必要があります｡
では､ そうしましょう｡
と言うことにしています｡
もしや｡
そうではありません｡
推測する｡
です｡
グレーター
次に1つ｡
そして､ それ
ゲスは以下略｡
11.
ですから､ 私たちの場合は､ 1になってもいいようにしたいので､ ここでは0にしましょう｡
10ならまだいいんです｡
その場合は？
まあ､ 実際に試してみて､ それが正しいゲストかどうか確認すればいいんですけどね｡
今すぐ
これが失敗したらどうなるのでしょうか？
ユーザーがint型に変換できない文字列を入力した場合はどうなるのでしょうか？
たとえば､ 端末でPythonインタプリタを起動し､ intと入力してちんぷんかんぷんにしていると､ value
error invalid literal for int with base tenと表示されます｡
何をしようとしているのか全く分からないので､ ここで値のエラーを確認します｡
そこで､ 私が言いたいことは｡
試してみることです｡
このコードのビット｡
そして､ とりあえずはここでパス｡
そして､ もし何らかの理由で通らず､ 値のエラーを確認したら､ プリントするつもりです｡
を入力してください｡
数字です｡
すごい｡
そこで､ 入力が1〜10の数字であることを確認しています｡
では､ とりあえず､ これが機能していることを確認するために､ こうしてみましょう｡
このループやプリントから脱却しよう｡
ここは大丈夫です｡
そして､ 今､ 1から10までの数字を入力していると考えて､ このループから脱却してください｡
そして､ これをもう少し小さくして､ よく見えるようにしましょう｡
これでよしとする｡
そしてここでは､ 正しい答えが出るまでループを続けるので､ continueを実行します｡
つまり､ 今回もレンデントをインポートして､ 1から10までの乱数を生成しています｡
ユーザーから推測してもらう｡
そして､ 入力が1〜10の数字であることを確認したい｡
そこで､ ループを回し続け､ 数字が0から11であるかどうかを尋ねることにします｡
そうであれば､ 問題ないのですが｡
もし何らかの理由でバリューが出たら､ 「ちょっと､ うちの番号を入力してください」と言うつもりです｡
では､ それを検証してみましょう｡
自分の端末に行く｡
あるいは､ 実際には､ ここでこれを実行すればいいのです｡
走らせてみよう｡
わかりました｡
1から10までの数字を当てる｡
そして､ 私はすべての良いを取得します｡
例えば､ ここに2つほどスペースが必要だと思うんです｡
ちょっと変な感じですね｡
では､ GSAの1番から10番まで言って､ スペースを確保しましょう｡
もう一度実行してみましょう｡
これでよしとする｡
そして､ 実はすでに気づいているのですが､ 例えば失語を入力した場合､ 修正しなければならないバグがあるのです｡
まいったなぁ｡
もう一度､ 私たちの番号を入力してください｡
番号を入力してください｡
そして､ 破壊されてしまうので､ これを止めなければなりません｡
さて､ ここで何が起こったのか？
まあ､ このループから抜け出せなかったんですけどね｡
私たちは続けて､ ひたすら前進しました｡
壁から｡
そして､ バリューエラーが出続けた｡
だから､ ここで気をつけなければならないことがある｡
続けるときに思い出してください｡
部族ブロックに戻ったり､ ループに戻ったりして､ またこれを試そうとするのです｡
しかし､ インプットや新たなインプットを求めているわけではありません｡
今回も失敗しそうです｡
そして､ また別の値のエラーが起こり､ これは失敗することになるのです｡
別の値のエラーが発生する｡
だから､ 推測を入れる必要があるのです｡
中の様子はこちら
トライブ・ロックのすぐ内側｡
それで今､ これを実行すると｡
よし､ 数字を当てよう｡
ギブアップしよう｡
得た｡
ねえ､ 番号を入力してください｡
よし､ 数字を入力しよう｡
私たちは
エントリーします｡
ゼロはどうですか？
いや､ そうではない｡
これではダメなんです｡
何度も聞いてくるのは､ まあ､ 入力した数字が､ 1対10より少ないからでしょう｡
でも､ それは間違った答えです｡
チェックが間違っている可能性があります｡
あのさぁ...｡
そうしよう｡
他に言いましょう｡
おい､ ボゾ｡
1から10まで言いました｡
それは楽しみですね｡
よし､ これを実行しよう｡
ゼロにしよう｡
おい､ ボゾ｡
1から10まで言いました｡
よし､ 5つやってみよう｡
ねえ｡
1から10までの数字かな｡
すべて順調です｡
すべて良好です｡
わかりました｡
さて､ これからすることは､ 推測と答えが一致するかどうかを確認することです｡
さて､ その前に､ 円グラフのIDがちょっとしたヒントを与えてくれています｡
だからこそ､ IDの威力は絶大です｡
そしてここで､ 実はこれを単純化することができます｡
推測であれば言えるのですが｡
ゼロより高い｡
そして11未満｡
じゃあ､ これをやって､ あれを見て｡
コードを単純化しただけです｡
そして､ 編集者から素敵なヒントをいただきました｡
なるほど｡
ここはスルーしましょう｡
だから､ プリントと言うより､ オールオッケー｡
もしやと思いましょう｡
ということである｡
もう一つ条件をつけて､ もしint.
推測する｡
答えに等しい｡
印刷します｡
あなたの
A.
天才です｡
そして､ そこから脱却する｡
ここで､ その方法に注目してください｡
2回ほど当ててみてください｡
同じ関数を何度も実行しないように､ ここで終了とするのが良い方法かもしれませんね｡
そして､ このように推測してもらうだけでいい｡
つまり､ コードをきれいにし､ より英語らしく読めるようにするのです｡
それはいいことですね｡
そして今､ これを実行すると｡
その数､ 仮に5とします｡
いや､ それはおかしい｡
6回やろう｡
7はどうでしょう？
8､ 9？
こいつはタフな奴だ｡
1､ 2､ 3､ 4
おいおい
10なのか？
すごい｡
私たちは間違いなく天才ではありません｡ なぜなら､ 私たちはただ､ まあ､ 10回試しただけですが､ これはうまくいっているように見えます｡
実際にちょっとズルをして､ これをきちんと動作させるかどうか確認しましょう｡
ここで実際にプリントアウトしてみます｡
その答えは
だから､ 入力する前に答えが見えてしまうんです｡
実際にやってみましょう｡
ここです｡
実行」をクリックすると
わかりました｡
forと入力すると､ その数字が｡
わかりました｡
今､ 私は天才だ｡
初挑戦です｡
よし､ ごまかしながらだが､ これはうまくいっているようだ｡
かっこいいですね｡
さて､ 最後の部分ですが､ 今までは入力を使っていましたが､ ターミナルで実行したいので､ 実際にうまくパラメータを与えることができるようにしたいと言いました｡
そうですね｡
スタートパラメータとエンドパラメータにran intを与えることで､ 好きなだけゲームを難しくすることができるのです｡
だから､ とてもシンプルなんです｡
ここには輸入の仕組みがあるんです｡
そして､ 私たちは単にcis dot rgvと言うだけです｡
最初のパラメータは､ 覚えておいてください､ 最初のものはファイル名になり､ 次に
3つ目のパラメータは､ 私たちが与えている数字になります｡
では､ このファイルを今から使ってみましょう｡
コードをコピーしてみましょう｡
そして､ この例では､ よりシンプルなので､ sublime textファイルに追加するだけにします｡
ああ､ ここでもシステムVをやらなければならないようだ｡
それを忘れないようにすること｡
だから､ そこも直そう｡
そんな感じ｡
そのほうがいい｡
そして､ これをint型でなく実行すると､ これから与えるパラメータが文字列に変わることを思い出してください｡
ですから､ これをこのようなイベントに変換するようにすればいいのです｡
さて､ これをそのままコピーすると
これをこっちに走らせる｡
もう一度実行してみましょう｡
だから､ 前のコマンドを覚えているので､ ここを上に押しているんです｡
それをやってみよう｡
1番か2番を当ててください｡
一本で行こう｡
これでよしとする｡
私は天才だが､ 我々のプログラムはうまくいっていない｡
私たちの推測は､ いまや通用するのです｡
とても､ かっこいいです｡
こんないい仕事があるんだったら
そうでない場合は､ 私のコードを見て､ どこで間違ったのかがわかればいいのです｡
でも､ よくぞここまで｡
次回作でお会いしましょう｡
バイバイ｡