Mein Code hat ein Problem. Ich bin relativ neu beim Lesen von Dateien, und als solche weiß ich nicht, was mit meinem Code falsch ist.Warum wird die Eingabe des Benutzers nicht als richtig erkannt?
# Flashcards
#Read from a file containing questions in the form question, answer
import random
import time
def __run__():
read_file = open('state_capitals.txt','r')
lines = read_file.readlines()
ran_lines = random.randrange(0,49)
string_lines = lines[ran_lines]
global string_lines_split # To make debugging easier
string_lines_split = string_lines.split(',')
print(string_lines_split[1]) # Print correct answer
usr_input = input(string_lines_split[0])
if usr_input == str(string_lines_split[1]):
print("Correct!")
else:
print("Incorrect")
print(usr_input)
Wenn ich ausführen Lauf(), funktioniert alles gut, bis ich meine Antwort geben. Ich werde nach einer Antwort gefragt, und wenn ich sie eintrage, druckt das Programm, selbst wenn meine Antwort genau der Antwort in string_lines_split 1 entspricht, dass meine Antwort falsch ist. Link zu Textdokument: http://web.mit.edu/jesstess/www/IntermediatePythonWorkshop/state_capitals.txt
>>>__run__()
Helena
MontanaHelena
Incorrect
Helena
Vielen Dank für das Lesen über mein Problem, und führt mich zu einer Lösung. Ich freue mich auf die Zusammenarbeit mit der Stackoverflow-Community.
Wo ist 'string_lines_final' definiert? –