Python中的哲学:“import this”

Python011

Python中的哲学:“import this”,第1张

在命令行下,或是Pycham中输入 import this,得到了这样一篇短诗:

* (不知道算不算短诗,姑且就这样称呼吧...)

英文不好,有道一下,大概翻译为:

美丽总比丑陋好。

明了总比晦涩好。

简单总比复杂好。

复杂总比难懂好。

平铺总比嵌套好。

稀疏总比稠密好。

可读性很重要。

特殊情况并不特别到足以违反规则。

尽管实用性胜过纯洁性。

错误不应该悄无声息地过去。

除非显式地沉默。

面对模棱两可的情况,拒绝猜测的诱惑。

应该有一种——最好是只有一种——显而易见的方法。

尽管这种方式一开始可能并不明显,除非你是荷兰人。

现在总比没有好。

尽管“从不”常常比“现在”更好。

如果实现很难解释,那就是个坏主意。

如果实现很容易解释,这可能是一个好主意。

命名空间是一个伟大的想法——让我们做更多这样的事情!

好吧,不是太懂,大佬不愧是大佬,我等只能喊一声666......

不过这个导入的this是个啥东西?在pycham中点入this,可以看到它的源码:

最后,奉上一段个人比较喜欢的格言(有兴趣的话可以跑一下) (手动滑稽):

quit()   exit()

执行到此命令时,程序终止。

如果是程序陷入死循环,想强制结束,则按Ctrl + C。这个特别关键。

Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。

在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。

扩展质料:

Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。

然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大。

而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。

基于C的Python编译出的字节码文件,通常是.pyc格式。

除此之外,Python还可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。

参考资料:Python-百度百科

python的用途:

python也是一门程序语言。能写各种各样的程序。

优点:

1.支持OOP编程 从根本

上讲Python仍是一种面向对象的语言,支持多态、继承等高级概念,在Python里使用OOP十分容易 没有C++、Java那样复杂,但不必做Python下OOp高手,够用即可。 

2. 免费Python的使用是完全免费的,您可以从网络上免费下载、安装使用, Python上的其他程序包,也可下载安装使用。 Python的免费的同时又有很多的的社区对用户的提问提出快速的技术支持,学习和使用Python技术不再是一个人在战斗!

3. 可移植性 Python的实现是用ansi c编写的,可以运行在目前所有主流平台上,手机、pad上均可运行Python程序,其下的程序包也具有可移植性。

4. 功能强大 从特性的观点上看,Python是一个混合体,他丰富的工具集使得他介于传统的脚本语言和系统语言之间。

拓展资料:

设计定位

Python的设计哲学是"优雅"、"明确"、"简单"。因此,Perl语言中"总是有多种方法来做同一件事"的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是"用一种方法,最好是只有一种方法来做一件事"。

在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。

Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。所以很多人认为Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy。

Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。

虽然Python可能被粗略地分类为"脚本语言"(script language),但实际上一些大规模软件开发计划例如Zope、Mnet及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言,原因是"脚本语言"泛指仅作简单程序设计任务的语言,如shellscript、VBScript等只能处理简单任务的编程语言,并不能与Python相提并论。

Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。

因此,很多人还把Python作为一种"胶水语言"(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如Google Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用相应的模块。