python處理映象字串
阿新 • • 發佈:2018-12-10
題目:將字串s = 'ABCabcefghbxcmvSF'裝換為映象字串,例如a轉換成z,b轉換成y
首先科普一下python有兩個函式ord() 跟chr()
以上截圖來源菜鳥教程
有了ord函式,就可以知道每個字元對應的ASCII,當然也可以直接百度
由百度可知,小寫字元a對應的十進位制的ASCII是97,小寫z對應的是122,26個字母剛好分成兩半
a 97 --------> z 122
b 98 --------> y 121
c 99 --------> x 120
.
m 109 --------> n 110
發現 97+122 = 98+121 =99+120 = 109 +110 = 219
每個映象字母的十進位制ASCII相加都相等
因此,我們可以根據chr()函式跟ord函式。計算出已知的字母的映象字元。
如下
a = 'a'
trans_a = chr(219-ord('a'))
print(trans_a)
根據題目要求,程式碼如下:
s = 'ABCabcefghbxcmvSF' new_s = '' for i in s: if i.islower(): i = chr(219 - ord(i)) new_s += i elif i.isupper(): i = chr(155 - ord(i)) new_s += i print(new_s) >>>ZYXzyxvutsycxneHU