|
发表于 2016-11-23 13:52:34
|
显示全部楼层
- def is_palindrome(n, start, end): #定义回文贴的方法,有三个入参(字符串的长度,字符串左边字符的索引,字符串右边字符的索引)
- if start > end: #如果字符左边字符索引>右边字符索引(说明一半的字符已经比较过了)
- return 1 #返回1
- else: #如果左边索引值<右边索引值说明还没有对比完,如果第一个字符和最后一个字符相等则使用递归函数比较第二个字符和倒数第二个字符,否则返回0
- return is_palindrome(n, start+1, end-1) if n[start] == n[end] else 0
-
- string = input('请输入一串字符串:') #输入一个字符串
- length = len(string)-1 #确定字符串的长度(是为了确定end值)
- if is_palindrome(string, 0, length): #如果返回的是1,说明是回文贴
- print('"%s"是回文字符串!' % string)
- else: #返回0说明不是回文贴
- print('"%s"不是回文字符串!' % string)
复制代码 |
评分
-
查看全部评分
|