题目:
对输入的字符串进行加解密,并输出。
加密方法为:
当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;
当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;其他字符不做变化。
解密方法为加密的逆过程。
数据范围:输入的两个字符串长度满足1≤n≤1000 ,保证输入的字符串都是只由大小写字母或者数字组成
输入描述:
第一行输入一串要加密的密码
第二行输入一串加过密的密码
输出描述:
第一行输出加密后的字符
第二行输出解密后的字符
输入:abcdefg
BCDEFGH
输出:BCDEFGH
abcdefg
思路导图
代码:
n5 = input()
n6 = input()
l5 = []
l6 = []
for i in n5: # 加密
if i.isalpha(): # 字母
if i.islower(): # 小写字母
if i == 'z':
l5.append('A')
else: # 其它小写字母
p = i.upper()
q = ord(p) + 1
l5.append(chr(q))
elif i.isupper(): # 大写字母
if i == 'Z':
l5.append('a')
else: # 其它大写字母
x = i.lower()
y = ord(x) + 1
l5.append(chr(y))
elif i.isdigit(): # 数字
if int(i) == 9:
l5.append(0)
else: # 除9之外的其它数
l5.append(int(i) + 1)
else: # 其它
l5.append(i)
for i in n6: # 解密
if i.isalpha(): # 字母
if i.islower(): # 小写字母
if i == 'a':
l6.append('Z')
else:
u = i.upper()
v = ord(u) - 1
l6.append(chr(v))
elif i.isupper(): # 大写字母
if i == 'A':
l6.append('z')
else:
g = i.lower()
h = ord(g) - 1
l6.append(chr(h))
elif i.isdigit(): # 数字
if int(i) == 0:
l6.append(9)
else: # 除0之外的其它数
l6.append(int(i)-1)
else: # 其它
l6.append(i)
for d in l5:
print(d, end='',)
print()
for e in l6:
print(e, end='')
标签:小写字母,加解密,else,l6,算法,l5,输入,字符串,append From: https://www.cnblogs.com/zy7941246/p/17395989.html