2017-05-17 10 views
-3

私はこれをリストの文字列と比較したいが、出力するときに正しいリストと他のリストの同じ文字列をそれぞれ20回比較する。私は私が間違ってPython運転免許試験

def main():   

     submitted = ['A','D','C','A','C','A','D','C','A','D','A','C','B','D','A','C','C','A','D','B'] 

     outfile = open('submitted.txt', 'w') 

     for item in submitted: 

      outfile.write(item + '\n') 

     outfile.close() 

     infile = open('submitted.txt', 'r') 

     submitted = infile.readlines() 

     infile.close() 

     sub_count = 0 

     while sub_count < len(submitted): 
      submitted[sub_count] = submitted[sub_count].rstrip('\n') 
      sub_count += 1 

     print 'The answers you submitted were ', submitted 
     print '******************************************************************************************' 


     correct = ['A','C','A','A','D','B','C','A','C','B','A','D','C','A','D','C','B','B','D','A'] 

     outfile = open('correct.txt', 'w') 

     for item in correct: 

      outfile.write(item + '\n') 

     outfile.close() 

     infile = open('correct.txt', 'r') 

     correct = infile.readlines() 

     infile.close() 

     cor_count = 0 

     while cor_count < len(correct): 
      correct[cor_count] = correct[cor_count].rstrip('\n') 
      cor_count += 1 

     print 'The correct answers are ', correct 
     print '******************************************************************************************' 

     print 'BELOW IS THE COMPARISON OF YOUR ANSWERS TO THE CORRECT ANSWERS' 

     correct_count = 0 

     incorrect_count = 0 

     number_questions = 0 

     while (number_questions < 20): 

      number_questions += 1 

      for ans in submitted: 
       for cor in correct: 
        if cor == ans: 
         print cor, ans ,' = correct' 
         correct_count += 1 

        elif cor != ans: 
         incorrect_count += 1 
         print cor, ans ,' = wrong' 


main() 
+1

問題のある部分だけにコードを絞り込んでください。 –

答えて

2

あなたが提出した/正しい応答のペアのすべてを反復処理しているがやってるものを見るためにいくつかの助けを得ることができれば、あなたがを反復処理することにしたい一方で、私は、感謝します一致したペア。代わりに、

for ans, cor in zip(submitted, correct): 
    if ans == cor: 
     # do stuff 
    else: 
     # do other stuff 

も使用してください。whileループを直接外してください。それは何もしていない。