Python 定一个判断回文串的函数
问题描述:
编写函数名为is_Palindrome的函数,该函数须能够判断字符串是否为回文。(回文串即形如“DCBABCD”形式的字符串,该字符串无论从左读还是从右读,所读的顺序是一样的)。
答
有用点个采纳
def is_Palindrome(string):
if len(string) < 2:
return True
i, j = 0, len(string) - 1
while i < j:
if string[i] != string[j]:
return False
i += 1
j -= 1
return True
print(is_Palindrome("aabaa"))
答
方法1:
首尾遍历
方法2:
生成一个 翻转的字符串
和 原字符串比较
答
def is_Palindrome(str):
judgelist = []#初始化一个用于储存判断值的判断列表
for i in range(len(str)):#遍历字符串str里的每一个字符
if str[i] != str[len(str)-i-1]:#如果以字符串中心对称的两个字符不同,就添加一个False到判断列表
judgelist.append('Flase')
return 'True' if judgelist == [] else 'Flase'#如果判断列表为空,说明没有不满足条件的情况,就输出True,否则输出Flase
答
基于上面的回答,再送你一个压缩版的:
def is_Palindrome(str):return 'True' if '1' not in ['1' if str[i] != str[len(str)-i-1] else ['0'] for i in range(len(str))] else 'Flase'