这是我的问题的简化版本。
QA = open('Qestions and answers.txt')
Q = []
A = []
for line in QA:
(first,second) = line.split(';')
Q.append(first)
A.append(second)
QA.close()
print(A[0], A[1])
print(A[0] == '1981')
print(A[1] == 'Feb')
print(str(A[0]) == '1981') # I even tried str
print(str(A[1]) == "Feb")
输出:
1981
Feb
False
False
False
False
答案 0 :(得分:4)
你那里有额外的空白。我猜是这样的:
print(repr(A[0]))
输出:
'1981\n'
这是因为当您从文件中读取行时,您也会在每行的末尾获得换行符。如果您不想这样,请将它们剥离。
for line in QA:
line = line.rstrip('\n')
...
答案 1 :(得分:0)
strip()适用于此问题
print(A[0].strip() == '1981')
print(A[1].strip() == 'Feb')
True
True