私の最大の問題は、私が探しているのが正確に何であるかを質問する方法がわからないことだと思います。
私はhttp://www.tuxradar.com/content/code-project-build-flash-card-appのフラッシュカードプログラムからほとんどのコードを盗み、自分のニーズに合うように少し変更しました。しかし、私が正しい答えを得るとき、それは私がそれを間違っていると言います。
これが私のコードです:
#!/usr/bin/env python
import os
import random
import time
file1 = open('/root/first.txt', 'w')
file2 = open('/root/second.txt', 'w')
file1.writelines('1\n2\n3\n4\n5')
file2.writelines('0,2\n1,3\n2,4\n3,5\n4,6')
time.sleep(1)
file1.close
file2.close
time.sleep(1)
file1 = open('/root/first.txt', 'r')
file2 = open('/root/second.txt', 'r')
count = 0
score = 0
tries = int(raw_input('How many tries?'))
start_time = time.time()
f1content = file1.readlines()
f2content = file2.readlines()
try:
while count < tries:
os.system('clear')
wordnum = random.randint(0, len(f1content)-1)
correct = str(f2content[wordnum])
print 'Number:', f1content[wordnum], ''
answer = input('\nSurrounding numbers?')
if answer == correct:
raw_input('\nCorrect! Hit enter...')
score = score + 1
else:
print '\nNope, It\'s', correct
raw_input('Hit enter to try a new one...')
count = count + 1
except SyntaxError:
print 'you must enter a value, starting over'
os.system('./flash.py')
finally:
file1.close
file2.close
os.system('rm /root/first.txt')
os.system('rm /root/second.txt')
stop_time = time.time() - start_time
print '\nIt took you', stop_time / 60, 'minutes to get', score, 'out of', count, 'correct'
私の問題は35行目にあると仮定します。
correct = str(f2content[wordnum])
私がこれを考える理由は、それが私に与えて1
、正しい答えが正しいことを知っていて0,2
、それを入力すると、それはノー、それはだと言うから0,2
です。これは、プレーンテキストでは人間の目とまったく同じですが、コンピューターがそれを別のものとして読み取っていることを示しています。このため、文字列にしようとしましたが、整数にするとエラーになります。私は本当に立ち往生していて、それはとても単純なものだと確信していますが、私はそれを見ていません。どんな助けでもいただければ幸いです。たとえそれが私が答えを見つけることができる正しい方向への単なるポイントであるとしても。