(字典)rot13加密

编写一个"rot13"翻译器。"rot13"是一个古老而又简单的加密方法,它把字母表中的每个字母用其后的第13 个字母来代替。字母表中前半部分字母将被映射到后半部分,而后半部分字母将被映射到前半部分,大小写保持不变。举例来说,'a'将被替换为'n','X'将被替换为'K'; 数字和符号不进行翻译。

#! usr/bin/env python
# coding:utf-8
import string


upperdict = {}
lowerdict = {}
upperletters = string.uppercase
lowerletters = string.lowercase


dststr = []
oristr = raw_input('Enter string to rot13:')
print 'Your string ro en/crypt was :',oristr


for i in range(0,len(lowerletters)):                       #把所有小写字母转为rot13
    if i<13:
        lowerdict[lowerletters[i]] = lowerletters[i+13]
    else:
        lowerdict[lowerletters[i]] = lowerletters[i-13]


for i in range(0,len(upperletters)):                       #把所有大写字母转为rot13
    if i<13:
        lowerdict[upperletters[i]] = upperletters[i+13]
    else:
        lowerdict[upperletters[i]] = upperletters[i-13]


for ch in oristr:
    if ch in lowerdict:
        dststr.append(lowerdict[ch])
    elif ch in upperdict:
        dststr.append(upperdict[ch])
    else:
        dststr.append(ch)
dststr = ''.join(dststr)


print 'the rot13 string is:',dststr

你可能感兴趣的:(Python)