NumsList = ["1","2","3","4","5","6","7","8","9","0"]
UpperList = ['b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','a']
LowerList = ['B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','A']
def Encode(strs): # 解密
if not strs:
return strs
NewStr = ""
for x in strs:
if x.isdigit():
NewStr += NumsList[(int(x)+8) % 10] # 加密和解密是相反的,所以要回退一格;按列表长度处理
elif x.isupper():
NewStr += UpperList[(ord(x) - ord('A')+24) % 26]
elif x.islower():
NewStr += LowerList[(ord(x) - ord('a')+24) % 26]
print(NewStr)
return NewStr
def Decode(strs): # 加密
if not strs:
return strs
NewStr = ""
for x in strs:
if x.isdigit():
NewStr += NumsList[int(x)]
elif x.isupper():
NewStr += UpperList[ord(x) - ord('A')]
elif x.islower():
NewStr += LowerList[ord(x) - ord('a')]
print(NewStr)
return NewStr
Flag = 0
while True:
try:
strs = input()
if Flag == 0:
Decode(strs)
Flag = 1
else:
Encode(strs)
Flag = 0
except:
break