def decode(aString):
result=''
for i in range(len(aString)):
if ord(aString[i]) >=97 and ord(aString[i])<=122:
if ord(aString[i])+2>=122:
result+=chr((ord(aString[i])+2)%122+96)
else:
result+=chr(ord(aString[i])+2)
else:
result+=aString[i]
print result
观察图可以看出,类似于凯撒密码之类的,由于字符串不可变,不接受赋值运算,所以利用了一个新的字串,逐步的解析原来的字符串,然后按照规则将对应的value的字母逐个添加到新的字符串中。
其中会有一个循环的操作,超过之后是其他的字符不是字母,需要一个求模的运算。
最后 ,翻译过来之后说建议使用。string.maketrans() is recommended