在递归的情况下,这种索引指的是什么。供参考,我附上了屏幕截图。
def is_palindrome(s):
if len(s) < 1:
return True
else:
if s[0] == s[-1]:
return is_palindrome(s[1:-1])
else:
return False
a=str(input("Enter string:"))
if(is_palindrome(a)==True):
print("String is a palindrome!")
else:
print("String isn't a palindrome!")
如果您查看文档,此表达式称为slicing:Python: Slicing
您可以在此语法中添加三个参数。
第一个是序列的开始,第二个是结束(不包括),第三个是步骤。
[当您输入否定参数时,意味着您从数组末尾开始计数。
因此:
s = "Hello World"
s = s[1:-1]
您将有:
# s = "ello Worl"
对于您的情况,逐步到达字符串的中心是递归的,并且每次您检查字符串是否仍然是回目录时,都是递归的。 (仅适用于even号)