python编程
提问:python编程
若字符串“He is in Beijing XYZ”为明文,请给出其密文,反之若其为密文,请给出其明文?加密规则为:大小写字符首尾相连,并往后移5个字符。解密规则与加密规则相反。
网友回答:
完整的程序参考
#coding:utf-8
def encode(str):
strn=''
for c in str:
if c.isupper():
d=ord(c)+5-ord('A')
if d>=26:
d-=26
strn+=chr(d+ord('A'))
elif c.islower():
d=ord(c)+5-ord('a')
if d>=26:
d-=26
strn+=chr(d+ord('a'))
else:
strn+=c
return strn
def decode(str):
strn=''
for c in str:
if c.isupper():
d=ord(c)-5-ord('A')
if d<0:
d+=26
strn+=chr(d+ord('A'))
elif c.islower():
d=ord(c)-5-ord('a')
if d<0:
d+=26
strn+=chr(d+ord('a'))
else:
strn+=c
return strn
##测试
s=encode("He is in Beijing XYZ")
print(s)
s1=decode(s)
print(s1)