python库有哪些(python有哪些常用的库)

http://www.itjxue.com  2023-03-28 14:03  来源:未知  点击次数: 

常用的python库,有哪些?

Python库有很多,为大家简单例举几个:

1、Arrow

Python中处理时间的库有datetime,但是它过于简单,使用起来不够方便和智能,而Arrow可以说非常的方便和智能。它可以轻松地定位几个小时之前的时间,可以轻松转换时区时间,对于一个小时前,2个小时之内这样人性化的信息也能够准确解读。

2、Behold

调试程序是每个程序员必备的技能,对于脚本语言,很多人习惯于使用print进行调试,然而对于大项目来说,print的功能还远远不足,我们希望有一个可以轻松使用,调试方便,对变量监视完整,格式已于查看的工具,而Behold就是那个非常好用的调试库。

3、Click

现在几乎所有的框架都有自己的命令行脚手架,Python也不例外,那么如何快速开发出属于自己的命令行程序呢?答案就是使用Python的Click库。Click库对命令行api进行了大量封装,你可以轻松开发出属于自己的CLI命令集。终端的颜色,环境变量信息,通过Click都可以轻松进行获取和改变。

4、Numba

如果你从事数学方面的分析和计算,那么Numba一定是你必不可少的库。Numpy通过将高速C库包装在Python接口中来工作,而Cython使用可选的类型将Python编译为C以提高性能。但是Numba无疑是最方便的,因为它允许使用装饰器选择性地加速Python函数。

5、Matlibplot

做过数据分析,数据可视化的数学学生一定知道matlab这个软件,这是一个收费的数学商用软件,在Python中,Matlibplot就是为了实现这个软件中功能开发的第三方Python库。并且它完全是免费的,很多学校都是用它来进行数学教学和研究的。

6、Pillow

图像处理是任何时候我们都需要关注的问题,平时我们看到很多ps中的神技,比如调整画面颜色,饱和度,调整图像尺寸,裁剪图像等等,这些其实都可以通过Python简单完成,而其中我们需要使用的库就是Pillow。

7、pyqt5

Python是可以开发图形界面程序的。而pyqt就是一款非常好用的第三方GUI库,有了它,你可以轻松开发出跨平台的图形应用程序,其中qtdesigner设计器,更是加速了我们开发图形界面的速度。

Python常用的标准库以及第三方库有哪些?

推荐5个常用的Python标准库:

1、os:提供了不少与操作系统相关联的函数库

os包是Python与操作系统的接口。我们可以用os包来实现操作系统的许多功能,比如管理系统进程,改变当前路径,改变文件权限等。但要注意,os包是建立在操作系统的平台上的,许多功能在Windows系统上是无法实现的。另外,在使用os包中,要注意其中的有些功能已经被其他的包取代。

我们通过文件系统来管理磁盘上储存的文件。查找、删除、复制文件以及列出文件列表等都是常见的文件操作。这些功能通常可以在操作系统中看到,但现在可以通过Python标准库中的glob包、shutil包、os.path包以及os包的一些函数等,在Python内部实现。

2、sys:通常用于命令行参数的库

sys包被用于管理Python自身的运行环境。Python是一个解释器,也是一个运行在操作系统上的程序。我们可以用sys包来控制这一程序运行的许多参数,比如说Python运行所能占据的内存和CPU,Python所要扫描的路径等。另一个重要功能是和Python自己的命令行互动,从命令行读取命令和参数。

3、random:用于生成随机数的库

Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。

4、math:提供了数学常数和数学函数

标准库中,Python定义了一些新的数字类型,以弥补之前的数字类型可能的不足。标准库还包含了random包,用于处理随机数相关的功能。math包补充了一些重要的数学常数和数学函数,比如pi、三角函数等等。

5、datetime:日期和时间的操作库

日期和时间的管理并不复杂,但容易犯错。Python的标准库中对日期和时间的管理颇为完善,你不仅可以进行日期时间的查询和变换,还可以对日期时间进行运算。通过这些标准库,还可以根据需要控制日期时间输出的文本格式

在python中一共有多少个标准库?

Python 语言官方的参考手册钟,介绍了与 Python 一同发行的标准库。

文本处理服务

string?--- 常见的字符串操作

re?--- 正则表达式操作

difflib?--- 计算差异的辅助工具

textwrap?--- 文本自动换行与填充

unicodedata?--- Unicode 数据库

stringprep?--- 因特网字符串预备

readline?--- GNU readline 接口

rlcompleter?--- GNU readline 的补全函数

二进制数据服务

struct?--- 将字节串解读为打包的二进制数据

codecs?--- 编解码器注册和相关基类

数据类型

datetime?--- 基本日期和时间类型

zoneinfo?--- IANA 时区支持

calendar?--- 日历相关函数

collections?--- 容器数据类型

collections.abc?--- 容器的抽象基类

heapq?--- 堆队列算法

bisect?--- 数组二分查找算法

array?--- 高效的数值数组

weakref?--- 弱引用

types?--- 动态类型创建和内置类型名称

copy?--- 浅层 (shallow) 和深层 (deep) 复制操作

pprint?--- 数据美化输出

reprlib?--- 另一种?repr()?实现

enum?--- 对枚举的支持

graphlib?--- 操作类似图的结构的功能

数字和数学模块

numbers?--- 数字的抽象基类

math?--- 数学函数

cmath?--- 关于复数的数学函数

decimal?--- 十进制定点和浮点运算

fractions?--- 分数

random?--- 生成伪随机数

statistics?--- 数学统计函数

函数式编程模块

itertools?--- 为高效循环而创建迭代器的函数

functools?--- 高阶函数和可调用对象上的操作

operator?--- 标准运算符替代函数

文件和目录访问

pathlib?--- 面向对象的文件系统路径

os.path?--- 常用路径操作

fileinput?--- 迭代来自多个输入流的行

stat?--- 解析?stat()?结果

filecmp?--- 文件及目录的比较

tempfile?--- 生成临时文件和目录

glob?--- Unix 风格路径名模式扩展

fnmatch?--- Unix 文件名模式匹配

linecache?--- 随机读写文本行

shutil?--- 高阶文件操作

数据持久化

pickle?--- Python 对象序列化

copyreg?--- 注册配合?pickle?模块使用的函数

shelve?--- Python 对象持久化

marshal?--- 内部 Python 对象序列化

dbm?--- Unix "数据库" 接口

sqlite3?--- SQLite 数据库 DB-API 2.0 接口模块

数据压缩和存档

zlib?--- 与?gzip?兼容的压缩

gzip?--- 对?gzip?格式的支持

bz2?--- 对?bzip2?压缩算法的支持

lzma?--- 用 LZMA 算法压缩

zipfile?--- 使用ZIP存档

tarfile?--- 读写tar归档文件

文件格式

csv?--- CSV 文件读写

configparser?--- 配置文件解析器

tomllib?--- Parse TOML files

netrc?--- netrc 文件处理

plistlib?--- 生成与解析 Apple?.plist?文件

加密服务

hashlib?--- 安全哈希与消息摘要

hmac?--- 基于密钥的消息验证

secrets?--- 生成管理密码的安全随机数

通用操作系统服务

os?--- 多种操作系统接口

io?--- 处理流的核心工具

time?--- 时间的访问和转换

argparse?--- 命令行选项、参数和子命令解析器

getopt?--- C 风格的命令行选项解析器

logging?--- Python 的日志记录工具

logging.config?--- 日志记录配置

logging.handlers?--- 日志处理程序

getpass?--- 便携式密码输入工具

curses?--- 终端字符单元显示的处理

curses.textpad?--- 用于 curses 程序的文本输入控件

curses.ascii?--- 用于 ASCII 字符的工具

curses.panel?--- curses 的面板栈扩展

platform?--- 获取底层平台的标识数据

errno?--- 标准 errno 系统符号

ctypes?--- Python 的外部函数库

并发执行

threading?--- 基于线程的并行

multiprocessing?--- 基于进程的并行

multiprocessing.shared_memory?--- Shared memory for direct access across processes

concurrent?包

concurrent.futures?--- 启动并行任务

subprocess?--- 子进程管理

sched?--- 事件调度器

queue?--- 一个同步的队列类

contextvars?--- 上下文变量

_thread?--- 底层多线程 API

网络和进程间通信

asyncio?--- 异步 I/O

socket?--- 底层网络接口

ssl?--- 套接字对象的 TLS/SSL 包装器

select?--- 等待 I/O 完成

selectors?--- 高级 I/O 复用库

signal?--- 设置异步事件处理程序

mmap?--- 内存映射文件支持

互联网数据处理

email?--- 电子邮件与 MIME 处理包

json?--- JSON 编码和解码器

mailbox?--- 操作多种格式的邮箱

mimetypes?--- 映射文件名到 MIME 类型

base64?--- Base16, Base32, Base64, Base85 数据编码

binascii?--- 二进制和 ASCII 码互转

quopri?--- 编码与解码经过 MIME 转码的可打印数据

结构化标记处理工具

html?--- 超文本标记语言支持

html.parser?--- 简单的 HTML 和 XHTML 解析器

html.entities?--- HTML 一般实体的定义

XML处理模块

xml.etree.ElementTree?--- ElementTree XML API

xml.dom?--- 文档对象模型 API

xml.dom.minidom?--- 最小化的 DOM 实现

xml.dom.pulldom?--- 支持构建部分 DOM 树

xml.sax?--- 支持 SAX2 解析器

xml.sax.handler?--- SAX 处理句柄的基类

xml.sax.saxutils?--- SAX 工具集

xml.sax.xmlreader?--- 用于 XML 解析器的接口

xml.parsers.expat?--- 使用 Expat 的快速 XML 解析

互联网协议和支持

webbrowser?--- 方便的 Web 浏览器控制工具

wsgiref?--- WSGI 工具和参考实现

urllib?--- URL 处理模块

urllib.request?--- 用于打开 URL 的可扩展库

urllib.response?--- urllib 使用的 Response 类

urllib.parse?用于解析 URL

urllib.error?--- urllib.request 引发的异常类

urllib.robotparser?--- robots.txt 语法分析程序

http?--- HTTP 模块

http.client?--- HTTP 协议客户端

ftplib?--- FTP 协议客户端

poplib?--- POP3 协议客户端

imaplib?--- IMAP4 协议客户端

smtplib?--- SMTP 协议客户端

uuid?---?RFC 4122?定义的UUID对象

socketserver?--- 用于网络服务器的框架

http.server?--- HTTP 服务器

http.cookies?--- HTTP状态管理

http.cookiejar?—— HTTP 客户端的 Cookie 处理

xmlrpc?--- XMLRPC 服务端与客户端模块

xmlrpc.client?--- XML-RPC 客户端访问

xmlrpc.server?--- 基本 XML-RPC 服务器

ipaddress?--- IPv4/IPv6 操作库

多媒体服务

wave?--- 读写WAV格式文件

colorsys?--- 颜色系统间的转换

国际化

gettext?--- 多语种国际化服务

locale?--- 国际化服务

程序框架

turtle?--- 海龟绘图

cmd?--- 支持面向行的命令解释器

shlex?—— 简单的词法分析

Tk图形用户界面(GUI)

tkinter?—— Tcl/Tk 的 Python 接口

tkinter.colorchooser?--- 颜色选择对话框

tkinter.font?--- Tkinter 字体封装

Tkinter 对话框

tkinter.messagebox?--- Tkinter 消息提示

tkinter.scrolledtext?--- 滚动文字控件

tkinter.dnd?--- 拖放操作支持

tkinter.ttk?--- Tk 风格的控件

tkinter.tix?--- TK扩展包

常用的python库有哪些

10个顶级且实用的python库

1、Dash

Dash是比较新的软件包,它是用纯python构建数据可视化app的理想选择,因此特别适合处理数据的任何人。Dash是Flask、Plotly.js和React.js的混合体。

2、Pygame

Pygame是SDL多媒体库的python装饰器,SDL是一个跨平台开发库,旨在提供对以下内容的低级接口:音频、键盘、鼠标、游戏杆、基于OpenGL和Direct3D的图形硬件。

Pygame具有高度的可移植性,几乎可以在所有平台和操作系统上运行。尽管它具有完善的游戏引擎,但您也可以使用此库直接从python脚本播放MP3文件。

3、Pillow

Pillow专门用于处理图像,您可以使用该库创建缩略图,在文件格式之间转换、旋转、应用滤镜、显示图像等等。如果您需要对许多图像执行批量操作,这是理想的选择。

4、Colorama

Colorama允许你在终端使用颜色,非常适合python脚本,文档简短而有趣,可以在Colorama PyPi页面上找到。

5、JmesPath

在python中使用JSON非常容易,因为JSON在python字典上的映射非常好。此外,python带有自己出色的json库,用于解析和创建JSON。对我来说,这是它最好的功能之一,如果我需要使用JSON,可以考虑使用python。

JmesPath使python处理JSON更加容易,它允许您明确地指定如何从JSON文档中提取元素。

6、Requests

Requests建立在世界上下载量最大的python库urllib3上,它令Web请求变得非常简单,功能强大且用途广泛。

Requests可以完成您能想到的所有高级工作,比如:认证,使用cookie,执行POST、PUT、DELETE等,使用自定义证书,使用会话Session、使用代理等。

7、Simplejson

python中的本地json模块有什么问题?没有!实际上,python的json是Simplejson。意思是:python采用了Simplejson的一个版本,并将其合并到每个发行版中,但是使用Simplejson具有一些优点:它适用于更多python版本、它比python随附的版本更新频率更高、它具有用C编写的部分,因此非常快速。

8、Emoji

Emoji库非常意思,但并非每个人都喜欢表情包,分析视角媒体数据时,Emoji包非常有用。

9、Python-dateutil

Python-dateutil模块提供了对标准datetime模块的强大扩展。我的经验是:常规的python日期时间功能在哪里结束,而Python-dateutil就出现了。

10、BeautifulSoup

如果您从网站上提取了一些HTML,则需要对其进行解析以获取实际所需的内容。BeautifulSoup是一个python库,用于从HTML和XML文件中提取数据。它提供了导航,搜索和修改解析树的简单方法。它非常强大,即使损坏了,也能够处理各种HTML,这是一个非常强大的功能。

它的一些主要功能:

①BeautifulSoup会自动将传入文档转换为Unicode,将传出文档转换为UTF-8,您无需考虑编码。

②BeautifulSoup位于流行的python解析器的顶部,使您可以尝试不同的解析策略或提高灵活性。

常用的python库有哪些?

1、Matplotlib:用于创建二维图和图形的底层库,有了它的帮助,你可以构建各种不同的图标,从直方图到散点图再到费笛卡尔坐标图,它都可以与很多流行的绘图库结合使用。

2、Seaborn:包含更适合处理图标的默认设置,此外还有丰富的可视化库,包含一些复杂类型,比如说时间序列、联合分布图等。

3、Plotly:一个很流行的库,可以让你轻松构建复杂的图形,该软件包含用于交互式web应用程,可实现轮廓图、三元图以及三维图等效果。

4、Pydot:纯Python编写的Graphviz接口,经常用于生产复杂的定向图和无向图,能够显示图形的结构,构建神经网络和基于决策树的算法是非常有效。

5、pyecharts:功能非常强大,支持多达400+地图,支持JupyterNotebook、JupyterLab,可以集成Flask,Sanic,Django等主流Web框架。

6、cufflinks:结合了plotly的强大功能和panda的灵活性,可以方便地进行绘图,避免了数据可视化过程中,对数据存储结构和数据类型进行复杂的麻烦。

由dem生成streamnetwork的python库有哪些

Python有很多库可以用来生成Dem to Stream network,其中最常用的是GDAL库。GDAL是一个开源的跨平台库,主要用于处理地理数据,它提供了一系列的工具,可以用来从DEM数据中提取流网络。它可以从DEM图层中提取河流网络,计算河流的宽度,深度,河流的起点和终点,以及河流的流量。

此外,还有一个名为Fiona的Python库,它可以用于从DEM数据中提取河流网络,它支持多种格式的地理数据,可以从ESRI,GeoTIFF和其他格式的DEM数据中提取河流网络。

另外,还有一个名为Rasterio的Python库,它支持多种格式的地理数据,可以用来从DEM数据中提取河流网络,并将其转换为GeoJSON格式的矢量数据。

最后,Python还提供了一个名为Pysheds的库,它可以用来从DEM数据中提取河流网络,并将其转换为GeoJSON格式的矢量数据。

总之,Python有很多库可以用来从DEM数据中提取河流网络,如GDAL库、Fiona库、Rasterio库和Pysheds库等。它们都可以用来从DEM数据中提取河流网络,并将其转换为GeoJSON格式的矢量数据。

(责任编辑:IT教学网)

更多

推荐新书快递文章