Python 五个有趣的彩蛋,你都知道吗?

阅读文本大概须要 6.6 分钟。python

当一门编程语言是开源的时候,每每会有产生一些搞笑和有趣的东西。一般,这意味着社区的贡献者会为该语言添加一些有趣和特别的彩蛋以及隐藏的特性(固然前提是不会增长在生产环境中使用的风险)。程序员

Python 就是一个很好的例子。做为一门开源的语言,它的社区为其贡献了一些十分幽默的东西。shell

旁注:若是您想观察彩蛋,请注意,它们只能在第一次工做。若是但愿从新运行它们,须要从新启动 Python shell。编程

0. Hello World

程序员们都熟悉 Hello World 的概念。在大多数状况下,它指的是使用该编程语言编写的最小程序,它会将“Hello World”打印到屏幕。这多是在学习新的编程语言时首先要作的。小程序

Python 有一个酷酷的隐藏的库,作了一些有点不同凡响的事:微信

>>> import __hello__
Hello World...

1. April Fool

下面的 April fool 玩笑是由 Barry Warsaw 提出的,与他的退休有关。他是一位著名的 Python 开发者,在他宣布正式退休的时候,就诞生了下面这个彩蛋:less

>>> from __future__ import barry_as_FLUFL
>>> 1 <> 2
True

2. 由 C++ 转换到 Python

'braces'库也是一个具备浓厚程序员风格的玩笑,它在其文档中提到,当在编写 Python 代码时使用这个库可提供使用 C++ 花括号的功能。但当你尝试使用它的时候,你将会看到社区对此的见解:编程语言

>>> from __future__ import braces
SyntaxError: not a chance

哈哈哈,觉得导入 braces 就可使用花括号来结束代码块?Python 的答案是:没门儿!ide

3. 经典的 Python 之禅

import this

运行此命令将显示由 Tim Peters 编写的"Zen Of Python(Python 之禅)"。据传这是 Python 中的『八荣八耻』,每一个有追求的 Python 程序员都应该谨记于心。学习

import this
The Zen of Python, by Tim Peters
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 之父呢。 作比不作好,但立马去作有时还不如不作。 若是实现很难说明,那它是个坏想法。 若是实现容易解释,那它有多是个好想法。 命名空间是个绝妙的想法,让咱们多多地使用它们吧!

4. “反重力”漫画

import antigravity

输入这行代码,会直接跳转到漫画网页 xkcd。漫画颇有意思,一我的漂浮在天空中,他的一位朋友好奇的问他是怎么飞起来的。

image

对话内容大体翻译:

上图:

“你在飞!怎么作到的?”

“Python!”

下左:

“我昨晚学习了 Python,一切都是那么简单”

“运行 HELLO WORLD 只须要 print "Hello World!"”

下中:

“我仍是不明白……动态类型,仍是空格?”

“来加入咱们吧,编程又再次变得有趣起来了,Python 是一个全新的世界”

“但你是怎么飞起来的?”

下右:

“我只是输入了 import antigravity”

“就这样?”

“我还对药品柜中的全部东西进行了采样比较”(暗指他对比过多种编程语言,但仍是以为 Python 最简单)

“但我想这就是 Python.”

文章转载自 :开源中国社区 [http://www.oschina.net]

本文地址:https://www.oschina.net/news/...

欢迎关注个人微信公众号「痴海」,后台回去「1024」,领取最新 Python 教程。
痴海

相关文章
相关标签/搜索