A Byte of Python 之 回文

巴扎黑
巴扎黑 原创
2016-12-08 10:53:57 1478浏览

回文即顺着读和倒着读都一样的字符串。
建立文件palindrome.py,敲入如下代码:

#设置需要过虑的标点符号
forbidden = (".", "?", "!", ":", ";", "-", "—", "()", "[]", "...", "'", '""', "/", ",", " ")
#获取一个字符串,书中要求确认"Rise to vote, sir."是回文
text = input("请输入:")
#将字符串倒过来
def reverse(text):
str_tmp = []
str = ""
for i in range(0,len(text)):
if text[i] in forbidden:
continue
else:
str_tmp.append(text[i].lower())#方便比较,将字母转成小写字母
return str.join(str_tmp)[::-1]
#做是否是回文检测
def is_palindrome(text):
str_tmp = []
str = ""
for i in range(0,len(text)):
if text[i] in forbidden:
continue
else:
str_tmp.append(text[i].lower())
return str.join(str_tmp) == reverse(text)
#输出检测结果
if is_palindrome(text):
print(text, "是回文")
else:
print(text, "不是回文")


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。