diff --git a/wiki/programming-language/Python/文化/语言特性.md b/wiki/programming-language/Python/文化/语言特性.md index addb1a2a..9cb4c5d1 100644 --- a/wiki/programming-language/Python/文化/语言特性.md +++ b/wiki/programming-language/Python/文化/语言特性.md @@ -11,12 +11,20 @@ author: 7Wate date: 2022-10-18 --- -Python 是多范型编程语言。它完全支持结构化编程和面向对象编程,还有很多特征支持函数式编程和元编程比如元对象协议(元类和魔术方法)。通过扩展还可以支持很多范型,包括面向切面编程、契约式设计和逻辑编程。 +Python 是一门**跨平台的脚本语言**,Python 规定了一个 Python 语法规则,根据该规则可编写 Python 解释器。 -Python 使用动态类型,在内存管理上采用引用计数和环检测相结合的垃圾收集器。它的特征还有动态名字解析(后期绑定),即在程序执行期间绑定方法和变量的名字。 +Python 属于动态语言,将 Python 程序编译成中间形式的字节码,并接着在它的虚拟机上执行,相较于 C/C++ 等编译成机器码的编译语言而言**运行速度较慢**。 -Python 对遵循 LISP 传统的函数式编程提供了有限的支持,它提供了 map、filter 和 reduce 函数;列表推导式、字典、集合和生成器表达式。标准库中的模块 functools 和 itertools,实现了从 Haskell 和 Standard ML 借鉴来的函数式工具。 +Python 是**多范型编程语言**。它完全支持结构化编程和面向对象编程,还有很多特征支持函数式编程和元编程比如元对象协议(元类和魔术方法)。通过扩展还可以支持很多范型,包括面向切面编程、契约式设计和逻辑编程。 -Python 的设计理念是“优雅”、“明确”、“简单”,它的一些重要准被合称为“Python之禅”。 +Python 使用**动态类型**,在内存管理上采用引用计数和环检测相结合的垃圾收集器。它的特征还有动态名字解析(后期绑定),即在程序执行期间绑定方法和变量的名字。 -Python 开发者的方法论是“用一种方法,最好是只有一种方法来做一件事”,显著不同于以 Perl 语言为代表的“不止一种方法去做一件事”风格。Python 开发者在设计语言时,如果面临多种选择,一般会拒绝花俏的语法,而选择明确没有或者很少有歧义的语法。 +Python 对**遵循 LISP 传统的函数式编程提供了有限的支持**,它提供了 map、filter 和 reduce 函数;列表推导式、字典、集合和生成器表达式。标准库中的模块 functools 和 itertools,实现了从 Haskell 和 Standard ML 借鉴来的函数式工具。 + +Python 的**设计理念是“优雅”、“明确”、“简单”**,它的一些重要准被合称为“Python之禅”。 + +Python 开发者的方法论是“**用一种方法,最好是只有一种方法来做一件事**”,显著不同于以 Perl 语言为代表的“不止一种方法去做一件事”风格。Python 开发者在设计语言时,如果面临多种选择,一般会拒绝花俏的语法,而选择明确没有或者很少有歧义的语法。 + +**PyPI**(Python Package Index,PyPI)是 Python 的正式第三方( official third-party)软件套件的软件存储库。pip 是事实标准和官网推荐的用 Python 书写的**软件包管理系统**,它通常连接到叫做 Python 包索引的一个公开软件包在线仓库。 + +Python venv 是标准库中的**虚拟环境管理工具**,同时支持多种不同的虚拟环境管理如:Virtualenv、Pipenv 等。