pythonを初めて一か月、傑作展という何か作らねばならない学校の課題があったため、pythonで何か簡単なものを作れないかと考えました。そこで実用的な英単語フラッシュカードを作ってみることにしました。おおまかなコードはかけたのですが、一度でてきた問題を出ないようにしたいのです。できる範囲で試行錯誤したのですが、結局できませんでした。quesitonにランダムで取り出した要素のキーを代入したから、61,62行目の処理で消せると思ったのですができませんでした。どうすればよいでしょうか、
import random import time def count(): t=3 while t>0: print(t) time.sleep(1) t -= 1 word={ '奨励する':'encourage', '存在する':'exist', '~を比較する':'compare', '強く主張する':'insist', '記録する':'record', '~を促進する':'promote', '投票する':'vote', '~を消費する':'consume', } time.sleep(3) print('次の単語の英訳を答えよ(できれば一番スタンダードなものでお願いします)') time.sleep(3) print('準備はいいですか?') time.sleep(2) count() print('スタート!') time.sleep(1) while True: question=random.choice(list(word.keys())) for index, p in enumerate(word,1): print("__________第{}問__________".format(index)) time.sleep(2) print(question) answer=input() if answer=='0': break elif answer==word[question]: print('*'*10+' '+'正'+' '+'解'+' '+'!'+' '+'*'*10) else: print('*'*10+' '+'残'+' '+'念'+' '+'!'+' '+'*'*10) time.sleep(2) for key in question: word.pop(key) question=random.choice(list(word.keys()))
コードは画像ではなく、</>(コードの挿入)ボタンを押して出てくる```~```の中に書きましょう。コードは一部分でなく全体を載せたほうが良いです。
・コードは画像ではなく入力してください。
・前の質問と内容がほとんどおなじに見えます
https://teratail.com/questions/i6akjzra7c8g66
せっかく回答してくれている人がいるのに、それに対して何のレスポンスも返さず
似たような質問を繰り返しているのはなぜなんでしょう?
random.shuffleを使った回答に対して”random.shuffleはできれば使いたくありません”というなら、それを前の質問の回答者さんに対して理由と一緒に提示するべきです。質問は編集できるので。
申し訳ありません、以後気を付けます。random.shuffleの()内が理解できず、かといってせっかくコードを書いてくださったのにもう一度聞くのも気が引けたため返信を後回しにしてしまいました。
回答2件
あなたの回答
tips
プレビュー