回文指正读和反读都相同的字符序列,如果反转字符串中的字符顺序,字符串保持不变。如“abcba”、“12321”等。
使用Python的切片方法检查字符串是否为回文
我们可以通过反转原始字符串,并将原始字符串的每个元素与反转后字符串的每个元素进行比较,来检查字符串是否是回文。这种方法可以通过切片来完成。下面的程序向我们展示了使用切片方法检查字符串是否是回文。
str1=input("请输入:")
if str1==str1[::-1] :
print(str1,"是回文")
else:
print(str1,"不是回文")
使用上面代码中的切片方法检查了字符串是否是回文,其中,字符串切片str1[i:j:s],当i缺失时,默认为0;当j缺失时,默认为len(str1)字符串长度;str1[::-1]相当于str1[-1:-len(a)-1:-1],也就是从最后一个元素开始到第一个元素,即字符串倒序。
使用Python的reversed()函数检查字符串是否为回文
reversed()函数接受一个序列,并返回该序列的反向迭代器。对于字符串,可以使用该函数来反转字符串中的字符序列。然后,与原始字符串比较,以确定它是否是回文。以下程序演示了如何使用函数检查字符串是否为回文。
str1=input("请输入:")
if str1=="".join(reversed(str1)):
print(str1,"是回文")
else:
print(str1,"不是回文")
上面程序中的reversed()函数对字符串反转迭代,用"".join()连接为字符串,与原始字符串进行对比,检查字符串是否是回文。
使用枚举法检查字符串是否为回文
#自定义函数
def huiwen(str):
#对字符串从两端循环对比
for i in range(0, int(len(str)/2)):
if str[i] != str[len(str)-i-1]:
return False
return True
s=input("请输入:")
if huiwen(s):
print("是回文!")
else:
print("不是回文!")
遍历字符串中的每一个字符,倒序生成新字符串,然后对比是否为回文。
s1=input("请输入:")
s2=""
for i in s1:
s2=i+s2
if s1==s2:
print("是回文!")
else:
print("不是回文!")
感谢阅读,关注我,精彩继续!