回文就是正序和反序都相同的字符串,如:“A”、“BAB”、“BCCB”,判断字符串是否是回文Python代码如下:
def check_palindrome(str):
# 如果字符串长度为1就一定是回文
if len(str) == 1:
print("是回文!")
# 如果能被2整除说明是偶数
elif len(str) % 2 == 0:
# 循环的次数就是比较的次数
for i in range(int(len(str) / 2)):
if str[i] == str[-(i + 1)]:
continue
else:
print("不是回文!")
return False
print("是回文!")
# 剩余的是奇数,比如“BAACAAB”需要对比三次就能确定是不是回文,最中间的无论是什么都是回文
else:
for i in range(int((len(str) - 1) / 2)):
if str[i] == str[-(i + 1)]:
continue
else:
print("不是回文!")
return False
print("是回文!")
if __name__ == '__main__':
check_palindrome("BACAB")
本人自学基础较差,如有问题欢迎指正,如有更好的解决方案欢迎讨论。