冠状病毒爆发时,大多数人都在居家工作。可以理解,很多人可能已经厌倦了整天呆在家里。
Python可能只是项目创建、模拟和自动化的工具,但它也可以变得非常有趣。
多亏了不可思议的Python社区,人们可以在这种开源语言中找到许多隐藏功能和彩蛋。这里介绍7个。
学习编程语言的第一件事就是在屏幕上打出“Hello World”。如何用Python实现Hello World? print('Hello World!')?
实际上,只需导入Python开发人员隐藏的模块就可以实现Hello World。试试这个:
>>> import __hello__
Hello World!
包括空格键在内,此代码只有16个字符!这可以说是“最简单的”Hello World程序之一。
请注意,不能在Python程序中重新导入模块,所以每次运行时可以打印一次信息。但这可能意味着一些深奥的东西…
这是在PEP 20中提出的概念。PEP是指Python的增强提案。
Python是您最喜欢的语言吗?喜欢它什么?是设计吗?有20条描述Python设计的指导原则,可通过以下方式找到其中的19条:
>>> import this
落下的那条原则呢?笔者猜测,人不可能无所不知。以下是前三条指导原则:
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
必须感谢开发人员为制作如此优雅且易读的编程语言方面所付出的努力。
这也是迄今为止Python开发者指南中唯一被称为“彩蛋”的“官方”程序。
还记得Python之禅的前三行吗?
深入挖掘并找到这个模块文件this.py后,就会发现,这是迄今为止最漂亮、最明确、最简单的代码。
一行Python代码,就可以体验反重力漫画!
import antigravity
真的。试试看!请记住,这么做可能会被困在外太空,浏览几个小时xkcd网络漫画。
与许多其他编程语言不同,Python在构造语句、函数和循环时实际上并不使用花括号{},但以后可能会用。
__future__ 模块包含不兼容更改,这些更改将在不久的将来强制实施。例如,在Python 2.6或2.7中从__future__ 导入 print_function允许“print”变成接受参数 print()的函数,就像在Python 3中一样。
看看从__future__开始,括号将如何工作:
>>> from __future__ import braces
SyntaxError: not a chance
做得好。
无穷大和NaN的散列。
>>> hash(float('inf'))
314159
>>> hash(float('nan'))
0
这个彩蛋是在Reddit上找到的。
老实说,笔者真想知道生命、宇宙与万事万物的终极解答。(注:the answer to life the universe and everything,出处是《银河系漫游指南》。)
关于运算符选择的争论已持续了42个年头。我们来解决这个问题。
这一问题是在PEP 401中提出的,以下内容并不难猜到。
著名的Python开发者巴里·华沙(Barry Warsaw )(又名巴里叔叔)被“选中”成为终身友好语言叔叔,简称FLUFL。很棒的首字母缩写。
他制定了一些“修改”,用钻石操作符<>替换不等式运算符 != 。
如果同意巴里叔叔的观点,可以导入这个有趣的库,并且<> 语法将会生效,而 !=会导致语法错误。
>>> 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 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有