用递归写检验回文字符串
def is_palindrome(n,start,end):if start > end:
return 1
else:
return is_palimdrome(n,start+1,end-1) if n == n else 0
string = input('今天天气不错:')
length = len(string)-1
if is_palindrome(string,0,length):
print('\''%s\''是回文字符串!'% string)
else:
print('\''%s\''是回文字符串!'% string)
这里怎么报错:连续字符后出现的意外字符呢
帮帮忙,求求了 你这格式化输出出问题了,用f字符串吧
def is_palindrome(n,start,end):
if start > end:
return 1
else:
return is_palindrome(n,start+1,end-1) if n == n else 0
string = input('今天天气不错:')
length = len(string)-1
if is_palindrome(string,0,length):
print(f'{string}是回文字符串!')
else:
print(f'{string}不是回文字符串!')
>>> def isPal(s):
if len(s) == 1 or len(s) == 0:
return True
else:
return isPal(s) if s == s[-1] else False
>>> isPal('abccba')
True
>>> isPal('level')
True
>>> isPal('noon')
True
>>> isPal('abcd')
False
>>> isPal('a')
True
>>> 逃兵 发表于 2021-8-13 11:31
你这格式化输出出问题了,用f字符串吧
f字符串和我上面这个有什么不一样啊 '\''%s\''是回文字符串!'% string
这里\'将一个引号转义了,要用 '\\'
一般 \',是用来表示类似 I'm 之类句子的时候,用来转义这个 ' ,你这里的引号不是用来当缩略使用就要用 '\\'
然后,你if else都是回文字符串,得改改
还有 return is_palimdrome(n,start+1,end-1) if n == n else 0这里 is_palimdrome拼写错了,n 写成 m了 柠檬冲冲冲 发表于 2021-8-13 11:36
f字符串和我上面这个有什么不一样啊
你只是写错了
def is_palindrome(n,start,end):
if start > end:
return 1
else:
return is_palindrome(n,start+1,end-1) if n == n else 0
string = input('今天天气不错:')
length = len(string)-1
if is_palindrome(string,0,length):
print('%s是回文字符串!'%string)
else:
print('%s不是回文字符串!'%string)
def is_palindrome(n,start,end):
if start > end:
return 1
else:
return is_palindrome(n,start+1,end-1) if n == n else 0
string = input('今天天气不错:')
length = len(string)-1
if is_palindrome(string,0,length):
print(string,'是回文字符串!')
else:
print('\\''%s\\''不是回文字符串!' % string)
阿奇_o 发表于 2021-8-13 11:33
第五行这里if前面为什么不是啊?
页:
[1]