Python内置函数、标准库、三方库

内置函数

Python解释器自带的函数叫做内置函数,这些函数可以直接使用,不需要导入某个模块。
如果你熟悉Shell编程,了解什么是Shell内置命令,那么你也很容易理解什么是Python内置函数,他们的概念是类似的。

  • Python解释器也是一个程序,它给用户提供了一些常用的功能,并给他们起了一个独一无二的名字,这些功能就是内置函数。
  • 内置函数是解释器的一部分,他随着解释器的启动而生效。
  • Python解释器启动以后,所有内置函数也就生效了,可以拿来直接使用。
  • 内置函数的数量必须被严格控制,否则Python解释器会变得臃肿和庞大。一般来说,只有那些频繁使用或者语言本身绑定比较紧密的函数,才会被提升为内置函数。

注意:不要使用内置函数的名字做为标识符使用(例如变量名、函数名、类名、模板名、对象名等),虽然这样做Python解释器不会报错,但这会导致同名的函数被覆盖,从而无法使用。例如:

>>> print = "http://c.biancheng.net/python/"  #将print作为变量名
>>> print("Hello World!")  #print函数被覆盖,失效
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    print("Hello World!")
TypeError: 'str' object is not callable
快速获取Python内置函数方法

输入代码 dir(builtins) 可直接打印Python内置函数

image

标准库

  • Python 标准库相当于解释器的外部扩展,它并不会随着解释器的启动而启动,要想使用这些外部扩展,必须提前导入。Python 标准库包含了很多模块,要想使用某个函数,必须提前导入对应的模块,否则函数是无效的。
  • Python 标准库非常庞大,所提供的组件涉及范围十分广泛,正如以下内容目录所显示的。这个库包含了多个内置模块 (以 C 编写),Python 程序员必须依靠它们来实现系统级功能,例如文件 I/O,此外还有大量以 Python 编写的模块,提供了日常编程中许多问题的标准解决方案。其中有些模块经过专门设计,通过将特定平台功能抽象化为平台中立的 API 来鼓励和加强 Python 程序的可移植性。

Python常用的的标准库有:

名称 作用
datetime 为日期和时间处理同时提供了简单和复杂的方法。
zlib 直接支持通用的数据打包和压缩格式:zlib,gzip,bz2,zipfile,以及 tarfile。
random 提供了生成随机数的工具。
math 为浮点运算提供了对底层C函数库的访问。
sys 工具脚本经常调用命令行参数。这些命令行参数以链表形式存储于 sys 模块的 argv 变量。
glob 提供了一个函数用于从目录通配符搜索中生成文件列表。
os 提供了不少与操作系统相关联的函数。

三方库

  • 网络爬虫

requests:https://pypi.org/project/requests/ 简洁且简单的处理HTTP请求的第三方库
scrapy:https://scrapy.org/ 快速、高层次的Web获取框架

  • 数据分析

numpy:http://www.numpy.org/ 开源数值计算扩展第三方库
scipy:https://pypi.org/project/scipy/ 专为科学以及工程计算的第三方库
pandas:http://pandas.pydata.org/ 可高效地操作大型数据集的第三方库

  • 文本处理

pdfminer:https://pypi.org/project/pdfminer/ 从PDF文档中提取各类信息的第三方库
openpyxl:https://pypi.org/project/openpyxl/ 处理Microsoft Excel文档的Python第三方库
python-docx:https://pypi.org/project/python-docx/ 处理Microsoft Word文档的Python第三方库
beautifulsoup4:https://pypi.org/project/beautifulsoup4/ 从HTML和XML文件中解析出数据的第三方库

  • 用户图形界面

PyQt5:https://pypi.org/project/PyQt5/ 成熟的商业级GUI第三方库
wxpython:https://pypi.org/project/wxPython/ 优秀的GUI图形库
pygtk:https://pypi.org/project/PyGTK/ 轻松创建具有图形用户界面程序的第三方库

  • 机器学习

Scikit-learn:https://scikit-learn.org/stable/ 简单且高效的数据挖掘和数据分析工具
Tensorflow:https://pypi.org/project/tensorflow/ 人工智能学习系统
Theano :http://deeplearning.net/software/theano/ 执行深度学习中大规模神经网络算法的运算

  • Web开发

Django:https://pypi.org/project/Django/ 最流行的开源Web应用框架
Pyramid:https://pypi.org/project/pyramid/ 通用、开源的Python Web应用程序开发框架
Flask:https://pypi.org/project/Flask/ 轻量级Web应用框架

  • 游戏开发

Pygame:https://www.python.org/ 面向游戏开发入门的Python第三方库
Panda3D:http://www.panda3d.org/ 开源、跨平台的3D渲染和游戏开发库
cocos2d:https://pypi.org/project/cocos2d/ 构建2D游戏和图形界面交互式应用的框架

  • 数据可视化

Matplotlib:https://matplotlib.org/ 提供数据绘图功能的第三方库,主要进行二维图表数据展示
TVTK:https://www.lfd.uci.edu/~gohlke/pythonlibs/ 图形应用函数库,是专业可编程的三维可视化工具
mayavi:https://pypi.org/project/mayavi/ 方便实用的可视化软件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容