前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python的7个彩蛋

Python的7个彩蛋

作者头像
人工智能小咖
修改2020-05-06 15:37:40
1.1K0
修改2020-05-06 15:37:40
举报
文章被收录于专栏:人工智能小咖人工智能小咖

冠状病毒爆发时,大多数人都在居家工作。可以理解,很多人可能已经厌倦了整天呆在家里。

Python可能只是项目创建、模拟和自动化的工具,但它也可以变得非常有趣。

多亏了不可思议的Python社区,人们可以在这种开源语言中找到许多隐藏功能和彩蛋。这里介绍7个。

1.最简单的“Hello World”

学习编程语言的第一件事就是在屏幕上打出“Hello World”。如何用Python实现Hello World? print('Hello World!')?

实际上,只需导入Python开发人员隐藏的模块就可以实现Hello World。试试这个:

代码语言:javascript
复制
>>> import __hello__
 Hello World!

包括空格键在内,此代码只有16个字符!这可以说是“最简单的”Hello World程序之一。

请注意,不能在Python程序中重新导入模块,所以每次运行时可以打印一次信息。但这可能意味着一些深奥的东西…

2.Python之禅

这是在PEP 20中提出的概念。PEP是指Python的增强提案。

Python是您最喜欢的语言吗?喜欢它什么?是设计吗?有20条描述Python设计的指导原则,可通过以下方式找到其中的19条:

代码语言:javascript
复制
>>> import this

落下的那条原则呢?笔者猜测,人不可能无所不知。以下是前三条指导原则:

代码语言:javascript
复制
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.

必须感谢开发人员为制作如此优雅且易读的编程语言方面所付出的努力。

这也是迄今为止Python开发者指南中唯一被称为“彩蛋”的“官方”程序。

3. this.py

还记得Python之禅的前三行吗?

深入挖掘并找到这个模块文件this.py后,就会发现,这是迄今为止最漂亮、最明确、最简单的代码。

4.体验反重力漫画

一行Python代码,就可以体验反重力漫画!

代码语言:javascript
复制
import antigravity

真的。试试看!请记住,这么做可能会被困在外太空,浏览几个小时xkcd网络漫画。

5.括号

与许多其他编程语言不同,Python在构造语句、函数和循环时实际上并不使用花括号{},但以后可能会用。

__future__ 模块包含不兼容更改,这些更改将在不久的将来强制实施。例如,在Python 2.6或2.7中从__future__ 导入 print_function允许“print”变成接受参数 print()的函数,就像在Python 3中一样。

看看从__future__开始,括号将如何工作:

代码语言:javascript
复制
>>> from __future__ import braces
 SyntaxError: not a chance

做得好。

6.散列

无穷大和NaN的散列。

代码语言:javascript
复制
>>> hash(float('inf'))
 314159
 >>> hash(float('nan'))
 0

这个彩蛋是在Reddit上找到的。

老实说,笔者真想知道生命、宇宙与万事万物的终极解答。(注:the answer to life the universe and everything,出处是《银河系漫游指南》。)

7.巴里叔叔

关于运算符选择的争论已持续了42个年头。我们来解决这个问题。

这一问题是在PEP 401中提出的,以下内容并不难猜到。

著名的Python开发者巴里·华沙(Barry Warsaw )(又名巴里叔叔)被“选中”成为终身友好语言叔叔,简称FLUFL。很棒的首字母缩写。

他制定了一些“修改”,用钻石操作符<>替换不等式运算符 != 。

如果同意巴里叔叔的观点,可以导入这个有趣的库,并且<> 语法将会生效,而 !=会导致语法错误。

代码语言:javascript
复制
>>> from __future__ import barry_as_FLUFL>>> 0 != 1
 SyntaxError: with Barry as BDFL, use '<>' instead of '!='>>> 0 <> 1
 True
 >>> 1 <> 1
 False

向你保证,以上实例没有打字错误。

其实彩蛋还有更多,但笔者就写到这里,接下来就自己探索吧。

感谢阅读!

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.最简单的“Hello World”
  • 2.Python之禅
  • 3. this.py
  • 4.体验反重力漫画
  • 5.括号
  • 6.散列
  • 7.巴里叔叔
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档