내 코드에 문제가 있습니다. 나는 상대적으로 파일 읽기에 익숙하지 않기 때문에 내 코드에 어떤 문제가 있는지 모르겠습니다.
# 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)
run ()을 실행하면 대답을 입력 할 때까지 모든 것이 잘 작동합니다. 대답을 입력하라는 메시지가 표시되고 입력하면 내 대답이 string_lines_split 1 의 대답과 정확히 동일 하더라도 프로그램은 내 대답이 틀렸다는 것을 인쇄합니다. 텍스트 문서 링크 : http://web.mit.edu/jesstess/www/IntermediatePythonWorkshop/state_capitals.txt
>>>__run__()
Helena
MontanaHelena
Incorrect
Helena
내 문제에 대해 읽고 해결책으로 안내해 주셔서 감사합니다. 나는 stackoverflow 커뮤니티와 함께 일하기를 기대합니다.
먼저 코드에 오류 print(string_lines_final[1])
가 있습니다 print(string_lines_split[1])
. 이어야합니다 .
귀하의 문제는 뒤에 있다는 것입니다 '\n'
에 string_lines_split[1]
실패 비교가 발생한다.
변경 시도 string_lines = lines[ran_lines]
에 string_lines = lines[ran_lines].rstrip()
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다