Python里隐藏的“禅”


Posted in Python onJune 16, 2014

在 python的lib目录里有一个:this.py,它其实是隐藏着一首诗,源码如下:

s = """Gur Mra bs Clguba, ol Gvz Crgref
Ornhgvshy vf orggre guna htyl.
Rkcyvpvg vf orggre guna vzcyvpvg.
Fvzcyr vf orggre guna pbzcyrk.
Pbzcyrk vf orggre guna pbzcyvpngrq.
Syng vf orggre guna arfgrq.
Fcnefr vf orggre guna qrafr.
Ernqnovyvgl pbhagf.
Fcrpvny pnfrf nera'g fcrpvny rabhtu gb oernx gur ehyrf.
Nygubhtu cenpgvpnyvgl orngf chevgl.
Reebef fubhyq arire cnff fvyragyl.
Hayrff rkcyvpvgyl fvyraprq.
Va gur snpr bs nzovthvgl, ershfr gur grzcgngvba gb thrff.
Gurer fubhyq or bar-- naq cersrenoyl bayl bar --boivbhf jnl gb qb vg.
Nygubhtu gung jnl znl abg or boivbhf ng svefg hayrff lbh'er Qhgpu.
Abj vf orggre guna arire.
Nygubhtu arire vf bsgra orggre guna *evtug* abj.
Vs gur vzcyrzragngvba vf uneq gb rkcynva, vg'f n onq vqrn.
Vs gur vzcyrzragngvba vf rnfl gb rkcynva, vg znl or n tbbq vqrn.
Anzrfcnprf ner bar ubaxvat terng vqrn -- yrg'f qb zber bs gubfr!"""
d = {}
for c in (65, 97):
    for i in range(26):
        d[chr(i+c)] = chr((i+13) % 26 + c)
print "".join([d.get(c, c) for c in s])

输出结果为:(翻译自IT柏拉图)
 

The Zen of Python, by Tim Peters
《Python 的禅》 by 提姆·彼特
Beautiful is better than ugly.
美丽优于丑陋。
Explicit is better than implicit.
明确优于隐式。
Simple is better than complex.
简单优于复杂。
Complex is better than complicated.
复杂优于烦锁。
Flat is better than nested.
平直优于嵌套。
Sparse is better than dense.
稀疏优于紧密。
Readability counts.
注重可读性。
Special cases aren't special enough to break the rules.
特殊不能违抗规则,
Although practicality beats purity.
虽然实用性胜于纯净。
Errors should never pass silently.
错误不应该无声无息,
Unless explicitly silenced.
除非明确地沉默。
In the face of ambiguity, refuse the temptation to guess.
面对模糊的脸,拒绝诱导猜测。
There should be one-- and preferably only one --obvious way to do it.
应该有一个 —— 并且最好只有一个明显的方法来做到这一点。
Although that way may not be obvious at first unless you're Dutch.
虽然这种方法不是很明显的,除非你是第一个荷兰人。
Now is better than never.
目前总比永远的好。
Although never is often better than *right* now.
虽然通常从不比立刻好。
If the implementation is hard to explain, it's a bad idea.
如果实现是很难解释的,这是一个坏主意。
If the implementation is easy to explain, it may be a good idea.
如果实现是很容易解释的,它可能是一个好主意。
Namespaces are one honking great idea -- let's do more of those!
命名空间是一个让人尖呼的伟大构想 —— 我们应该在那方面做得更多!

作者果然是很有“湿”意呀!!
Python 相关文章推荐
Python实现二分法算法实例
Feb 02 Python
PYTHON压平嵌套列表的简单实现
Jun 08 Python
Python实现字典去除重复的方法示例
Jul 31 Python
关于Python数据结构中字典的心得
Dec 04 Python
Python3实现的字典、列表和json对象互转功能示例
May 22 Python
python 匹配url中是否存在IP地址的方法
Jun 04 Python
CentOS 7下安装Python3.6 及遇到的问题小结
Nov 08 Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
Jul 19 Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
Jul 23 Python
Python datetime模块使用方法小结
Jun 18 Python
基于Python编写一个计算器程序,实现简单的加减乘除和取余二元运算
Aug 05 Python
python线程优先级队列知识点总结
Feb 28 Python
Python程序设计入门(5)类的使用简介
Jun 16 #Python
Python程序设计入门(4)模块和包
Jun 16 #Python
Python程序设计入门(3)数组的使用
Jun 16 #Python
Python程序设计入门(2)变量类型简介
Jun 16 #Python
Python程序设计入门(1)基本语法简介
Jun 13 #Python
Python对两个有序列表进行合并和排序的例子
Jun 13 #Python
用Python输出一个杨辉三角的例子
Jun 13 #Python
You might like
PHP连接access数据库
2015/03/27 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
php实时倒计时功能实现方法详解
2017/02/27 PHP
PHP简单实现欧拉函数Euler功能示例
2017/11/06 PHP
Laravel框架使用Seeder实现自动填充数据功能
2018/06/13 PHP
原生javascript实现的一个简单动画效果
2016/03/30 Javascript
JavaScript判断数字是否为质数的方法汇总
2016/06/02 Javascript
Angular懒加载机制刷新后无法回退的快速解决方法
2016/08/30 Javascript
Vue.js计算属性computed与watch(5)
2016/12/09 Javascript
vue2.0父子组件间通信的实现方法
2017/04/19 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
2017/06/13 Javascript
jQuery+vue.js实现的九宫格拼图游戏完整实例【附源码下载】
2017/09/12 jQuery
parabola.js抛物线与加入购物车效果的示例代码
2017/10/25 Javascript
js中this对象用法分析
2018/01/05 Javascript
在Vue中使用Compass的方法
2018/03/02 Javascript
webpack打包优化的几个方法总结
2020/02/10 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
[48:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第二场 1月29日
2021/03/11 DOTA
python错误处理详解
2014/09/28 Python
Python字符串格式化输出方法分析
2016/04/13 Python
Python  pip安装lxml出错的问题解决办法
2017/02/10 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
python实现下载pop3邮件保存到本地
2018/06/19 Python
python爬虫之线程池和进程池功能与用法详解
2018/08/02 Python
python绘制多个子图的实例
2019/07/07 Python
Scrapy框架基本命令与settings.py设置
2020/02/06 Python
Django数据库迁移常见使用方法
2020/11/12 Python
简述Html5 IphoneX 适配方法
2018/02/08 HTML / CSS
Linux面试题LINUX系统类
2014/11/19 面试题
银行工作检查书范文
2014/01/31 职场文书
日本语毕业生自荐信
2014/02/01 职场文书
一岗双责责任书
2014/04/15 职场文书
小学生综合素质评语
2014/04/23 职场文书
2015年度公共机构节能工作总结
2015/05/26 职场文书
如何用JavaScript实现一个数组惰性求值库
2021/05/05 Javascript
python引入其他文件夹下的py文件具体方法
2021/05/23 Python