这是我的密码:
bookings = ['blue,red', 'green,orange', 'yellow, purple']
number = 0
b = 0
c = 1
file_test = open('test_1.txt' , 'wt')
results_song = []
for item in bookings:
words = bookings[number].split(',')
results_song.append(words[0])
results_song.append(words[1])
number = number + 1
results_song_str = '\n'.join(results_song)
print(results_song_str)
file_test.write(results_song_str)
file_test.close()
file_test = open('test_1.txt' , 'r')
line = file_test.readlines()
for item in bookings:
line_1 = line[b]
line_2 = line[c]
answer = input('If first word is then what is the second word')
if answer == line_2:
print('correct')
else:
print('wrong')
b = b + 2
c = c + 2
但是,代码不会识别答案等于line_2
。我不明白为什么会这样。我已经检查了c
是正确的数字,并且line_2
与答案相同。但我注意到,当我在打印answer和line_2
时运行代码时,会返回:
red
red
但我从来没有在这里添加新的线条特征。你知道吗
任何帮助将不胜感激,因为我需要使用此代码的学校作业。你知道吗
打印调试
给予
啊哈!一个鬼鬼祟祟的新线人物!似乎当程序从文件中读取文本并拆分行时,它为您保存了换行符。多么甜蜜的烦人。:|
要删除它,可以使用
str.replace()
方法或者更改从文件中读取行的方式,使用
str.split()
方法手动拆分行功劳归于@胡安帕.阿里维拉加建议使用
repr()
检查值。相关问题 更多 >
编程相关推荐