天天看點

凱撒加密之一個神奇的Python的API

凱撒加密

在密碼學中,恺撒密碼是一種最簡單且最廣為人知的加密技術。

本質上恺撒加密就是一種替換加密的方式。

明文中的所有字母都在字母表上向後(或向前)按照一個固定數目進行偏移後被替換成密文。例,當偏移量是3的時候,所有的字母A将被替換成D,B變成E,以此類推。

Python中也有一個叫

maketrans

的API就是做替換的,可以實作這個古老的加密方式。

maketrans()

該方法用于建立字元映射的轉換表,對于接受兩個參數的最簡單的調用方式,第一個參數是字元串,表示需要轉換的字元,第二個參數也是字元串表示轉換的目标。

注:兩個字元串的長度必須相同,為一一對應的關系。

以下執行個體展示了使用maketrans() 方法将所有元音字母轉換為指定的數字:

API示例

#!/usr/bin/python
# -*- coding: UTF-8 -*-

from string import maketrans   # 必須調用 maketrans 函數。

intab = "aeiou"
outtab = "12345"
trantab = maketrans(intab, outtab)

str = "this is string example....wow!!!";
print str.translate(trantab);           

複制

以上執行個體輸出結果如下:

th3s 3s str3ng 2x1mpl2....w4w!!!           

複制