В чем разница между этими двумя методами нарезки и почему они не дают одинаковый результат? ⇐ Python

Программы на Python
Anonymous
В чем разница между этими двумя методами нарезки и почему они не дают одинаковый результат?

Сообщение Anonymous »

Я читал эту книгу «Непрактичные проекты на Python», затем он начал говорить о создании программы, которая могла бы извлекать палинграммы парных слов из словаря слов, вот как я это сделал:
set_of_words = set(convertion.turn_file_to_lst("2of4brif.txt")) #converts the dictionary to a set
lst_of_palingrams = []
for word in set_of_words:
rev_word = word[::-1]
end = len(word)
if len(word) > 1:
for i in range(1, len(word)):
if word[i:] == rev_word[:end-i] and rev_word[end-i:] in set_of_words:
lst_of_palingrams += [[word, rev_word[end-i:]]]
if word[:end-i] == rev_word[i:] and rev_word[:end-len(word[:end-i])] in set_of_words:
lst_of_palingrams += [[rev_word[:end-len(word[:end-i])] , word]]

Я проверил его версию, и она, по сути, была такой же, за исключением третьего оператора if, который он написал:
if word[:i] == rev_word[end-i:] and rev_word[:end-i] in set_of_words:
lst_of_palingrams += [[rev_word[:end-i] , word]]


Подробнее здесь: https://stackoverflow.com/questions/798 ... hey-giving

Вернуться в «Python»