1.回文
回文是一类字符串,这种字符串向后读取与向前读取都取得相同的内容。这是一个回文字符的典型例子:"Madam, I'm Adam" 或 "A man, a plan, a canal, Panama"。
如果仔细看,这些字符串向前读和向后读也不是完全相同。事实上,回文是在宽松的规则下进行字符比较。通常情况下,忽视单个字符的情况,对于非字母和非数字字符都没有严格要求。因此要评估是否回文,需要完成两个任务:
1)修改输入的字符串,使得:
所有字符的大小写相同。
只有字母和数字的字符。
2)一旦修改完成,就需要比较前向字符串和后向字符串,看它们是否相同。
import string
standerChar = string.lowercase + string.digits
userIn = raw_input("Input a string:")
modifiedList = []
for char in userIn.lower():
if char in standerChar:
modifiedList += char
modifiedStr = ''.join(modifiedList)
if modifiedStr == modifiedStr[::-1]:
print 'original string is:', userIn
print 'modified string is:', m