作者:雪儿babyqueenpb_446 | 来源:互联网 | 2023-10-10 10:31
遇到这样一道题目,是要求把输入的明文进行加密,加密的方法是按照一定的转换规则进行相应的替换得到最终的密文转换规则为:把密码中出现的小写字母都变成对应的数字,数字和其他的符号都不做
遇到这样一道题目,是要求把输入的明文进行加密,加密的方法是按照一定的转换规则进行相应的替换得到最终的密文
转换规则为:
把密码中出现的小写字母都变成对应的数字,数字和其他的符号都不做变换
密码中出现的大写字母则变成小写之后往后移一位,如:X,先变成小写,再往后移一位,就是y了
下面是具体实现:
#!usr/bin/env python
#encoding:utf-8
'''
__Author__:沂水寒城
功能:加密密文
'''
def jiami():
map_dict={'1':1,'abc':2,'def':3,'ghi':4,'jkl':5,'mno':6,'pqrs':7,'tuv':8,'wxyz':9,'0':0}
while 1:
one_str=raw_input()
one_list=[]
one_str_list=list(one_str)
for one_char in one_str_list:
if one_char>=0 and one_char<=9:
one_list.append(one_char)
elif ord(one_char)>=65 and ord(one_char)<=90:
one_list.append(chr(ord(one_char.lower())+1))
elif ord(one_char)>=97 and ord(one_char)<=122:
for one_key in map_dict.keys():
if one_char in one_key:
one_list.append(str(map_dict[one_key]))
else:
pass
else:
one_list.append(one_char)
print ''.join(one_list)
if __name__ == '__main__':
jiami()
结果如下:
YUANzhi1987
zvbo9441987
1234567890
1234567890
*()%¥#@
*()%¥#@
ADBFGKL
becghlm
acvdfjweiojl
228335934655
AHJjdsfhvj()*&23jkfd
bik5373485()*&235533