Python 彩蛋 —— 开发人员留下的惊喜

Python 彩蛋 —— 开发人员留下的惊喜

简介:Python 核心程序开发人员在软件内部设计了2个彩蛋。一起来看看吧。

💡彩蛋一:Python 之禅

Python 社区的理念都包含在蒂姆·彼得斯(Tim Peters)撰写的“Python之禅”中。想要了解这些编写优秀Python代码的指导原则,只需要在解释器中执行命令import this

请添加图片描述
《Python之禅》原文⬇️

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之禅》,蒂姆·彼得斯著

  • 美丽优于丑陋。(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.)

含义:精准地捕获异常,不写 except:pass 风格的代码

  • 面对不确定性,不要妄加猜测。(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.)

含义:Python致力于简化程序员的工作。程序需要编写它的程序员可以理解。如果“高性能”代码过于复杂以致程序员无法理解,那么它就是不好的代码。

  • 命名空间是个绝妙的主意,我们应当多加利用(Namespaces are one honking great idea – let’s do more of those!)

含义:要好好利用命名空间。命名规范,名称不冲突。



💡彩蛋二:Python 有趣的漫画

xkcd是由兰德尔·门罗(Randall Munroe)所绘制的网络漫画,作者给作品的定义是一部“关于浪漫、讽刺、数学和语言的网络漫画” 感兴趣的可以在解释器中执行命令import antigravity xkcd链接。

请添加图片描述



  • 77
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 113
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 113
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闹闹不闹!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值