Примеры:
Ввод: малаялам Вывод: Да Ввод: гики Вывод: Нет
Метод № 1
1) Найти обратную строку
2) Проверить, совпадают ли обратная и исходная строки.
# функция, возвращающая обратную строку
def
reverse (s):
return
s [ ::
-
1
]
def
isPalindrome(s):
# Функция обратного вызова
rev
=
reverse (s)
# Проверяем, равны ли обе строки
if
(s
=
=
rev):
return
True
return
False
# Код драйвера
s
=
"малаялам"
ans
=
isPalindrome (s)
if
ans
=
=
1
:
print
(
" Yes "
)
else
:
print
(
<код кл ass = "string"> " No " )
Вывод:
Да
Итеративный метод: этот метод предоставлен Ball Raza . Цикл от начала до длины /2 и проверка первого символа до последнего символа строки и второго до предпоследнего, и так далее.... Если какой-либо символ не совпадает, строка не будет палиндромом.
Ниже приведена реализация описанного выше подхода:
# функция для проверьте строку
# палиндром или нет
def
isPalindrome (
str
):
# Цикл от 0 до len / 2
for
i
in
xrange
(
0
,
len
(
str
)
/
2
):
if
str
[я]!
=
str
[
len
(
str
)
-
i
-
1
]:
return
False
return
True
# main function
s
"малаялам"
ans
=
isPalindrome(s)
if
(ans):
print
(
"Yes"
)
else
:
print
(
"Нет"
)
Вывод:
Да
Метод с использованием встроенной функции для позвонить линии: этот метод предоставлен Шариком Раза . В этом методе предопределенная функция ' ' .join (reversed (string)) используется для обратного строки.
Ниже приведена реализация описанного выше подхода:
< / p>
# функция для проверки строки
# палиндром или нет
def
isPalindrome(s):
# Использование предопределенная функция для
# вернуться к линейному выводу
rev
=
`` .join (
reversed
( s))
# Проверяем, что обе строки
# равно или нет
if
(s
=
=
rev):
return
True
return
False
< br> # main function
s
=
"малаялам"
и
=
isPalindrome (s)
if
(ans):
print
(
"Yes"
)
else
:
print
(
"Нет"
)
Вывод:
Да
Метод с использованием одной дополнительной переменной: В этом методе пользователь получает строковый символ один за другим и сохраняет его в пустой переменной. После сохранения всех символов пользователь сравнивает обе строки и проверяет, является ли это палиндромом или нет.
# Программа Python для проверки
# если строка является палиндромом
# или нет
x
=
"малаялам"
w
=
""
for
i
in
x:
w
=
i
+
w
if
(x
=
=
w):
print
(
" YES "
)
Выход:
Да
Эта статья предоставлена Сахилом Раджпутом . Если вы представляете Python.Engineering и хотели бы внести свой вклад, вы также можете написать статью, используя вклад.python.engineering или опубликовав статью. внести свой вклад @ python.engineering. См. мою статью на домашней странице Python.Engineering и помогите другим специалистам.
Если вы обнаружите что-то не так или хотите поделиться дополнительной информацией по теме, обсуждаемой выше, оставляйте комментарии.