2016-09-30 8 views
0

テキストファイルのキーワードをランダムに選択するQue Cardクイズを作成しています。テキストファイルでも同様です。これまでのところ、キーワード、正しい定義、2つの誤った定義がリストの中に保存されています。とにかく、リスト内の項目の順序をランダム化して、ユーザーが質問に回答したときにその位置をランダム化できるかどうかです。 これを調べようとしましたが、何も見つかりませんでした。複数の選択肢の中からランダムに選択したものを選ぶPYTHON 3.5.2

例:

「キーワードカエルれ 1:カエルは青である 2:カエルは緑です 3:カエルは紫です 」 しかし、その後、次の時間には、キーワードのカエルは、彼らが異なるになりますアップしています注文。

は、 "キーワードはカエル 1:カエルは2 緑:カエルは 3青:カエルは紫です "

答えて

0

ここrandom.shuffle()に基づいて一つの可能​​なアプローチがあります。私はオブジェクトを使用して質問を回答と分離し、あなたの大会に続いて、質問を作成する際に最初に回答した回答が正しいものとします。私は、元の入力をそのまま維持し、依然としてランダムな順序付けを達成することが可能であることを示すために、回答自体ではなくインデックスをシャッフルすることを選択しました。以下のような結果を生成し

import random 

class Question: 
    def __init__(self, q, a): 
     self.q = q 
     self.a = a 
     self.order = [i for i in range(len(a))] 
     random.shuffle(self.order) 

    def query(self): 
     print(self.q, [self.a[i] for i in self.order]) 

    def correct_answer(self): 
     print("\tCorrect answer is", self.a[0]) 

q1 = Question("Frogs are:", ["green", "red", "purple"]) 
q1.query() 
q1.correct_answer() 
q2 = Question("Unicorns are:", ["mythological", "silver", "gold"]) 
q2.query() 
q2.correct_answer() 

Frogs are: ['purple', 'red', 'green'] 
    Correct answer is green 
Unicorns are: ['gold', 'mythological', 'silver'] 
    Correct answer is mythological 

を明らかにこれは、ソリューション、入力/出力フォーマットとプレゼンテーション内容のちょうどスケッチあなた自身の満足にあなたによって働いする必要があります。

関連する問題