相信大家在学习python肯定都听说过python之禅。python之禅到底是个什么东西,设计者为什么要这样设计?又有什么意义呢?看完下面的文章你就会明白了。
文章转载自:微信公众号 Python的乐趣
作者:一粒米饭
在Python的解释器中隐藏一个彩蛋,输入import this就会返回19条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!
它的作者是 Tim Peter,这些设计理念开始是在Python邮件列表中发表,它包含了影响Python编程语言设计的19条软件编写原则。在最初及后来的一些版本中,一共包含20条,其中第20条是“这一条留空(...)请 Guido 来填写”。这留空的一条从未公布也可能并不存在。
其中从吉多·范罗苏姆的博客中可以了解到,最开始Python是他个人的一个实验项目(skunkworks)。为了加快Python发展,他采用了一些原则,其中包括省时规则(timesaving rules):
还有除了省时规则以外的其他规则:
1. Python实现不应局限于特定平台。可以运行某些功能并非总是可用的,但是核心部分应该在任何地方都可以使用。
2. 不要用机器可以处理的细节来打扰用户。
3. 支持和鼓励独立于平台的用户代码,但不要中断对平台功能或属性的访问(这与Java形成鲜明对比)。
4. 大型复杂系统应具有多个扩展级别。这为经验丰富的用户(无论是否熟练)提供了最大的发挥空间。
5. 错误不应致命。也就是说,只要虚拟机仍在运行,用户代码就应该能够从错误情况中恢复。
6. 同时,错误不应静默地传递(后两项决定了在整个实现中使用异常)。
7. 不应允许用户的Python代码错误导致Python解释器的不确定行为;核心错误绝不应该是由用户的错误引起的。
基于以上的哲学理念,Tim Peter整理了19条Python之禅并收录到Python增强建议(PEP 20)之中。
下面,再来简单说下这19条Python之禅的含义。
数据分析咨询请扫描二维码
数据分析是一个涉及从数据收集、清理到分析、可视化和解释的复杂过程。随着数据在各行各业中的重要性不断增加,数据分析工具也变 ...
2024-10-066. 方差分析 单因素多水平方差分析 例6.1 不同装配方式对生产的过滤系统数量的差异性检验 某城市过滤水系统生产公司,有A、B、C3 ...
2024-10-06不过,在出题前,要公布上一期LEVEL II中61-65题的答案,大家一起来看! 62、B 64、B 你答对了吗? 66.关于单因素 ...
2024-10-05嗨喽,各位同学又到了公布CDA数据分析师认证考试LEVEL II的模拟试题时间了,今天给大家带来的是模拟试题(一)中的146-150 ...
2024-10-055. 假设检验 久经考场的你肯定对于很多概念类题目里问到的 “区别和联系” 不陌生,与之类似,在统计领域要研究的是数据之间的区 ...
2024-10-05数据模型(Data Model)是对现实世界数据特征的抽象,用于描述一组数据的概念和定义。它从抽象层次上描述了系统的静态特征、动态 ...
2024-10-044. 区间估计 还以为你被上节课的内容唬住了~终于等到你,还好没放弃! 本节我们将说明两个问题:总体均值 的区间估计和总体比例 ...
2024-10-04大数据分析师在现代企业中扮演着至关重要的角色。他们通过分析大量数据,帮助企业做出明智的决策。要成为一名成功的大数据分析师 ...
2024-10-033. 数据分布 t分布、F分布和卡方分布是统计学中常用的三种概率分布,它们分别用于样本均值的推断、方差的比较和数据的拟合优度检 ...
2024-10-03大数据分析师在现代企业中扮演着至关重要的角色。他们通过分析大量数据,帮助企业做出明智的决策。要成为一名成功的大数据分析师 ...
2024-10-022. 描述性统计 上一篇介绍了数据的分类、统计学是什么、以及统计学知识的大分类,本篇我们重点学习描述性统计学。 我们描述一组 ...
2024-10-02大数据专业的毕业生可以选择多种就业方向和岗位,主要集中在数据分析、系统研发和应用开发三大领域。以下是一些具体的岗位: 大 ...
2024-10-011.统计学简介 听说你已经被统计学劝退,被Python唬住……先别着急划走,看完这篇再说! 先说结论,大多数情况下的学不会都不是知 ...
2024-10-01大数据的全球市场规模在 2023 年估计为 1850 亿美元,预计到 2030 年将达到 3834 亿美元,2023 年至 2030 年的复合年增长率为 11 ...
2024-09-30大数据分析是指收集、分析和处理大量数据以发现市场趋势、洞察力和模式,帮助公司做出更好的商业决策的过程。这些信息可以快速、 ...
2024-09-30大数据分析是当今世界一些最重要行业进步背后的推动力,包括医疗、政府和金融等领域。了解更多关于如何处理大数据以及开始时使用 ...
2024-09-30大数据已经成为日常生活不可或缺的一部分,影响着我们的活动。对大量数据的分析已经成为一个重要的行业,对大数据分析师的需求也 ...
2024-09-30数据分析师证书报名官网指南 数据分析师在现代企业中扮演着越来越重要的角色,掌握数据分析技能不仅能够提升个人职场竞争力,也 ...
2024-09-29大数据分析师培训学什么 课程简介 大数据分析师课程以大数据分析技术为主线,以大数据分析师为培养目标,从数据分析基础、linux ...
2024-09-29随着大数据在各行各业中的应用日益广泛,数据分析师这一职业变得越来越重要。作为一名数据分析师,不仅需要具备扎实的技术能力, ...
2024-09-29