#python #compare #text-files
Вопрос:
Я пытаюсь сравнить список букв с буквами, которые находятся в текстовом файле, Все работает просто отлично, за исключением того факта, что даже если бы буква была равна букве текстового файла; это приведет к ложному
Вот пример того, что происходит:
with open("Comparing_file") as f:
for line in f:
line = line.strip("") # removing the spaces(if there was any)
letter = "A"
print("This is the line:", line)
print("This is the letter:", letter)
if letter.strip("") == line: # removing the spaces(if there was any)
print("equal")
else:
print("not equal")
Вот результаты:
This is the line: A
This is the letter: A
not equal
Ответ №1:
Вы злоупотребляете стриптизом.
S. strip([символы]) -> str Возвращает копию строки S с удаленными начальными и конечными пробелами. Если символы заданы, а не отсутствуют, вместо этого удалите символы в символах.
Это означает, что если вы предоставите аргумент для удаления, он удалит все, что содержится в этом аргументе. В вашем случае вы указали ""
, что это пустая строка, то есть полоса в основном ничего не сделает.
Вместо этого вы можете попробовать:
line.strip()
letter.strip()
# OR
line.strip(" ") # this for example will remove spaces.
line.strip("n") # this for example will remove "n".
Комментарии:
1. Спасибо
letter.strip("n")
, что работали на меня, надо было провести немного больше исследований