2个相同的字符串“不相等”[Python]

2024-04-28 20:55:53 发布

您现在位置:Python中文网/ 问答频道 /正文

通过搜索发现了一个类似的问题,但我是一个新的(糟糕的)程序员,无法理解答案。在

我有一个.txt文件,有多个字符串,用“-”分隔。我使用了一个分割来将一些字符串分隔成变量,其中2个是相等的,但是在if语句中它们显示为不相等。在

f_nmr, f_Question, f_1, f_2, f_3, f_answer = file.readline().split('-')
print(f_2)
print(f_answer)
if f_2 == f_answer:
    print("Yes")
elif f_2 != f_answer:
    print("No")

这将产生以下结果:

瑞典

瑞典

没有

在两个“瑞典”字符串的前面和后面都有一个空格,它们都是用大写字母“S”写成的,但它们不相等?我哪里搞砸了?在


Tags: 文件字符串答案answertxtreadlineif语句
1条回答
网友
1楼 · 发布于 2024-04-28 20:55:53

最后一个元素包括一个换行符。以这个输入文件为例:

$ cat file.txt
Sweden-Sweden

现在,让我们读一读:

^{2}$

解决方案是去掉换行符:

>>> a, b = open('file.txt').readline().rstrip('\n').split('-')
>>> a == b
True

相关问题 更多 >