2022年 11月 3日

Python判断字符串是否为回文问题

首先回文是指一串字符串正序倒序都是一样的,例如:aabbaa等,正序倒序都一样为回文。

一种方法是我们可以选择切片倒序方法:

  1. s = input("输入一个字符串string:")
  2. d = s[::-1]
  3. if d == s:
  4. print("yes")
  5. else:
  6. print("no")

另一种使用reserved函数反转判定是否相等:

  1. s = input('请输入一个字符串:')
  2. a = reversed(list(s))
  3. if list(a) == list(s):
  4. print('是回文')
  5. else:
  6. print('不是回文')

有疑问可以评论交流。

PS:本文没有考虑输入空格的情况。


如果考虑的话,建议使用while循环比较简单,我看到有些博主用的if循环,但是if循环存在第二次输入的时候退出循环了,所以建议改成while循环。

如下:

  1. x = len(s)
  2. while (x == 0):
  3. print("请不要输入空字符串")
  4. s = input("请重新输入字符串:")
  5. x = len(s)