Python - Readline和比较

Fee*_*man 1 python

我试图创建一个函数,读取文件中的每一行,并将其与反向(回文)版本进行比较i.e > (heheh = heheh) & (law = wal).因此,当我尝试这样做时,条件失败,函数返回一个空列表.

def palindrome_lst():
    lst = []
    with open("words.txt", "r") as f:
        for line in f:
            if line == line[::-1]:
                lst.append(line)
    return lst

print palindrome_lst()
Run Code Online (Sandbox Code Playgroud)

Dol*_*000 6

迭代文件中的行时,您将获得行终止符以及行的其余部分.Id est,你不是在比较"eye" == "eye",但是"eye\n" == "\neye",对于所有单词来说,这当然是错误的.

line = line.strip()在比较之前尝试添加.