牛客---简单密码python

现在有一种密码变换算法。

九键手机键盘上的数字与字母的对应: 1--1, abc--2, def--3, ghi--4, jkl--5, mno--6, pqrs--7, tuv--8 wxyz--9, 0--0,把密码中出现的小写字母都变成九键键盘对应的数字,如:a 变成 2,x 变成 9.

而密码中出现的大写字母则变成小写之后往后移一位,如:X ,先变成小写,再往后移一位,变成了 y ,例外:Z 往后移是 a 。

数字和其它的符号都不做变换。

数据范围: 输入的字符串长度满足 1≤n≤100 

输入:YUANzhi1987          输出:zvbo9441987

import sys
b = {'1':'1','abc':'2','def':'3','ghi':'4','jkl':'5','mno':'6','pqrs':'7','tuv':'8','wxyz':'9','0':'0'}

for line in sys.stdin:
    a = line.split()
    c = ''
    for i in a[0]:
        if i.isupper() ==True:
            ascii_code = ord(i.lower())
            shifted_code = (ascii_code-ord('a')+1)%26+ord('a')
            shifted_letter = chr(shifted_code)
            c = c+shifted_letter
        elif i.islower() == True:
            for index,value in b.items():
                if i in index:
                    c = c+b[index]
        else:
            c = c+i
    print(c)

你可能感兴趣的:(python)