【案例题】
假设密码本中数字和字符的对应关系为:0:h,1:n,2:b,3:x,
4:m,5:a,6:q,7:f,8:e,9:y
编写一个程序,任意输入一组整数,用密码本进行加密,
输出加密结果,示例如下:
请输入一组整数(空格分隔):5 2 67 81 90
加密后:a b qf en yh
Plaintext = input("请输入一组整数(空格分隔): ").split()
ls = []
checkbook = {0:"h",1:"n",2:"b",3:"x",4:"m",5:"a",6:"q",7:"f",8:"e",9:"y"}
for i in Plaintext:
if len(i) == 1:
value = checkbook.get(int(i))
ls.append(value)
else:
str = ""
for v in i:
value = checkbook.get(int(v))
str += value
ls.append(str)
for i in ls:
print(i,end=" ")
d = {'0':'h','1':'n','2':'b','3':'x','4':'m','5':'a','6':'q','7':'f','8':'e','9':'y'}
s = input(">>>")
p = ''
for i in s:
p += d.get(i, i)
print(p)
或者:
p = ''.join(map(lambda x:d.get(x, x) , s))
print(p)