華為機試題-簡單密碼python 實現


題目

密碼是我們生活中非常重要的東東,我們的那么一點不能說的秘密就全靠它了。哇哈哈. 接下來淵子要在密碼之上再加一套密碼,雖然簡單但也安全。 

  

假設淵子原來一個BBS上的密碼為zvbo9441987,為了方便記憶,他通過一種算法把這個密碼變換成YUANzhi1987,這個密碼是他的名字和出生年份,怎么忘都忘不了,而且可以明目張膽地放在顯眼的地方而不被別人知道真正的密碼。 

  

他是這么變換的,大家都知道手機上的字母: 1--1, abc--2, def--3, ghi--4, jkl--5, mno--6, pqrs--7, tuv--8 wxyz--9, 0--0,就這么簡單,淵子把密碼中出現的小寫字母都變成對應的數字,數字和其他的符號都不做變換, 

  

聲明:密碼中沒有空格,而密碼中出現的大寫字母則變成小寫之后往后移一位,如:X,先變成小寫,再往后移一位,不就是y了嘛,簡單吧。記住,z往后移是a哦。 

 

輸入描述:

輸入包括多個測試數據。輸入是一個明文,密碼長度不超過100個字符,輸入直到文件結尾

輸出描述:

輸出淵子真正的密文

 代碼
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
result=''
while True :
    passWord=sys.stdin.readline().strip()
    if passWord=='':
        break
    for i in range(len(passWord)-1):
        if passWord[i] in "abc":
            result+='2'
        elif passWord[i] in "def":
            result+='3'
        elif passWord[i] in "ghi":
            result+='4'
        elif passWord[i] in "jkl":
            result+='5'
        elif passWord[i] in "mno":
            result+='6'
        elif passWord[i] in "pqrs":
            result+='7'
        elif passWord[i] in "tuv":
            result+='8'
        elif passWord[i] in "wxyz":
            result+='9'
        elif "0" <=passWord[i]<="9":
            result+=passWord[i]
        elif passWord[i].isupper:
            if passWord[i]=='Z':
                result+='a'
            else:
                result+=chr(ord(passWord[i].lower())+1)
            
print(result)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM