寻找回文子串(python)
寻找回文子串(python)
描述
输入一个字符串s,找出并以列表形式输出s中最长的回文子字符串,有多个满足条件的子串全部输出。
输入
输入一个非空字符串
输出
以列表形式输出s中最长的回文子字符串
思路
- 设字符串s的长度为l,以l-1,l-2,l-3,...,2的长度依次截取(用切片的方法)。
if __name__ == '__main__':
str = input()
for l in range(len(str)-1,1,-1):
for pos in range(0,len(str)-1-l+1):
sub_str=str[pos:pos+l]
print(sub_str)
- 对截取的字符串进行判断,如果满足标准,将其放入到列表中,并跳出循环,如果单轮的判断结束后,列表仍为空,则跳到下一轮的判断中去
def judge(s):
return s[::-1]==s