1.Python起源与定义

Python 是由荷兰人吉多·罗萨姆于 1989 年发布的。Python 的第一个公开发行版发行于 1991 年。Python 的官方定义:Python 是一种解释型的、面向对象的、带有动态语义的高级程序设计语言。通俗来讲,Python 是一种少有的、既简单又功能强大的编程语言,它注重的是如何解决问题而不是编程语言的语法和结构。

2.Python的应用范围

Python 在通用应用程序、自动化插件、网站、网络爬虫、数值分析、科学计算云计算大数据网络编程等领域有着极为广泛的应用,像 OpenStack 这样的云平台就是由 Python 实现的,许多平台即服务(PaaS)产品都支持 Python 作为开发语言。近年来,随着 AlphaGo 几番战胜人类顶级棋手,深度学习为人工智能指明了方向。Python 语言简单针对深度学习的算法,以及独特的深度学习框架,将在人工智能领域编程语言中占重要地位。

3.Python的版本

Python前期主要有两大主要支流(2.x,3.x)。从 Python2 到 Python3 是一个大版本升级,有很多不向下兼容的差异,导致很多 Python2 的代码不能被 Python3 解释器运行,2020 年开始,Python 官方停止对 Python2 的维护,所有老代码都会超过保质期。所以,大概可能Python2.x凉凉了;Python3.x将成为Python学习的主流版本。

4.Python的优缺点

(1)优点

1.语言简洁

Python 是一种代表简单主义思想的语言。吉多·罗萨姆对 Python 的定位是“优雅,明确,简单”。Python 拒绝了“花俏”的语法,而选择明确的没有或者很少有歧义的语法,着重解决问题。

2.丰富的库(基础代码库)

Python 具有丰富和强大的库来被调用。用 Python开发,许多功能不必从零编写,直接使用现成的即可。Python 还有一个强大的后援—PyPI(https://pypi.python.org/pypi)。PyPI 是第三方 Python 模块集中存储库,可以把它当成大型的代码仓库。当你的需求的库在内置模块中找不到时,你可以很大概率能在PyPI上找到。全世界的 Python 用户都可以上传他们的模块以供分享,可以想象它的强大。当然身为未来大佬你也可以上传你的模块供全世界使用。

3.可扩展性强

这个特性经常为 Python 爱好者津津乐道,Python 经常用于将不同语言(尤其是 C/C++)编写的程序“粘”在一起,即 Python 的很多模块或者组件都是用其他语言写的,而 Python 的一个功能就是把这些模块很轻松地联结在一起。所以,人们也常常称 Python 为“胶水语言”,“万能语言”。

4.开源

Python 是自由/开源软件,使用者可以自由地发布这个软件的副本,阅读它的源代码,对它做改动,把它的一部分用于新的自由软件中。

5.跨平台

Python 的跨平台性可总结为“一次编写,到处运行”。

6.可嵌入型
Python 可以嵌入到 C/C++程序,从而向程序用户提供脚本功能。python也因此功能被称为脚本语言。

(2)缺点

1.运行速度相对较慢(较 C、C++而言)
Python毕竟不是最接近底层语言,与最接近底层的语言的运行速度相比会慢很多。Python 是解释型语言,其代码在执行时会一行一行地翻译成计算机能理解的机器码,这个翻译过程非常耗时,所以运行速度很慢。相比较而言,C 程序(编译型语言)是在运行前直接编译成计算机能执行的机器码,所以运行速度非常快。
当然,Python 也有很多手段可以提高运行速度。例如,Python 采用 PyPy[一种使用实时(Just-In-Time,JIT)技术的 Python 编译器]和调用 C 扩展能够在很大程度上提高速度。
2.容易被反编译
Python程序发布,不能隐藏源代码,可能不适合于大型的商业项目。当然,依靠软件授权的商业模式已经不复存在,现在更多的是靠卖服务的商业模式,后一种模式不需要把源码给别人。

5.帮助文档

1.python内置函数

help(str)          # 查看关于字符串类型的帮助文档
help(str.join)     # 查看关于字符串对象的 join()方法的帮助文档
dir([object])
# help()函数用于查看函数或模块用途的详细说明,而 dir()函数用于查看函数或模块内的操作方法,输出的是方法列表。

2.官方在线文档
在这里插入图片描述

3.离线帮助文档
在你的安装目录下找到一个名为 Python3x.chm 的离线帮助文档。它使用 IE 接口,所以用户实际上是使用网页浏览器来查看文档的

感谢大家,点赞,收藏,关注,评论!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐