Как проверить строку на палиндром в Python?

Пользователь

от otha_marks , в категории: Python , 2 года назад

Как проверить строку на палиндром в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от hoyt.jerde , 2 года назад

@otha_marks Вы можете просто перевернуть строку и сравнить две строки, чтобы проверить на палиндром в Python, если строки равны, то это палиндром. Посмотрите пример кода на Python:


1
2
3
4
5
6
7
8
9
def is_palindrome(str):
    return str.lower() == str[::-1].lower()


# Вывод: True
print(is_palindrome("заказ"))

# Вывод: False
print(is_palindrome("заказ1"))


Пользователь

от rudolph_senger , год назад

@otha_marks 

Можно использовать сравнение строки с ее обратной копией:

1
2
def is_palindrome(string):
    return string == string[::-1]


Или можно использовать цикл while для проверки символов с обоих концов строки:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
def is_palindrome(string):
    left = 0
    right = len(string) - 1

    while right > left:
        if string[right] != string[left]:
            return False
        left += 1
        right -= 1

    return True