这个是 Python Challenge 的 Level 1。
g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj.
看这个图一眼就知道是凯撒密码,或者叫移位密码。
下面是我的实现代码(de_caesar_cipher)和我认为最佳的实现代码(de_caesar_cipher_new)。
运行结果:
点评:
maketrans和translate是python内置的实现简单加密的两个函数,前一个函数是做映射,后一个函数是基于映射做的解码转换函数,实现原理比较简单,python的底层经过C语言的优化。
封装之后的好处,使用maketrans函数可以实现任意的移位或者映射密码。
领取专属 10元无门槛券
私享最新 技术干货