本文目录一览:
最受欢迎的 15 大 Python 库有哪些
1、Pandas:是一个Python包,旨在通过“标记”和“关系”数据进行工作,简单直观。它设计用于快速简单的数据操作、聚合和可视化,是数据整理的完美工具。
2、Numpy:是专门为Python中科学计算而设计的软件集合,它为Python中的n维数组和矩阵的操作提供了大量有用的功能。该库提供了NumPy数组类型的数学运算向量化,可以改善性能,从而加快执行速度。
3、SciPy:是一个工程和科学软件库,包含线性代数,优化,集成和统计的模块。SciPy库的主要功能是建立在NumPy上,通过其特定子模块提供有效的数值例程,并作为数字积分、优化和其他例程。
4、Matplotlib:为轻松生成简单而强大的可视化而量身定制,它使Python成为像MatLab或Mathematica这样的科学工具的竞争对手。
5、Seaborn:主要关注统计模型的可视化(包括热图),Seaborn高度依赖于Matplotlib。
6、Bokeh:独立于Matplotlib,主要焦点是交互性,它通过现代浏览器以数据驱动文档的风格呈现。
7、Plotly:是一个基于Web用于构建可视化的工具箱,提供API给一些编程语言(Python在内)。
8、Scikits:是Scikits
Stack额外的软件包,专为像图像处理和机器学习辅助等特定功能而设计。它建立在SciPy之上,中集成了有质量的代码和良好的文档、简单易用并且十分高效,是使用Python进行机器学习的实际行业标准。
9、Theano:是一个Python软件包,它定义了与NumPy类似的多维数组,以及数学运算和表达式。此库是被编译的,可实现在所有架构上的高效运行。
10、TensorFlow:是数据流图计算的开源库,旨在满足谷歌对训练神经网络的高需求,并且是基于神经网络的机器学习系统DistBelief的继任者,可以在大型数据集上快速训练神经网络。
11、Keras:是一个用Python编写的开源的库,用于在高层的接口上构建神经网络。它简单易懂,具有高级可扩展性。
12、NLTK:主要用于符号学和统计学自然语言处理(NLP) 的常见任务,旨在促进NLP及相关领域(语言学,认知科学人工智能等)的教学和研究。
13、Gensim:是一个用于Python的开源库,为有向量空间模型和主题模型的工作提供了使用工具。这个库是为了高效处理大量文本而设计,不仅可以进行内存处理,还可以通过广泛使用NumPy数据结构和SciPy操作来获得更高的效率。
…………
python第三方库——xlwt3
我们之前已经学习了xlrd这个库,这个库是读取excel表格内信息的,它并不能写入信息,这时候我们需要使用xlwt3这个库进行excel表格的写入。
打开命令提示符,使用pip进行安装
安装完后进入下一步:
这个xlwt3的库,好像已经很久没有人维护了,所以有一个问题就是,你用pip安装的这个库,是有点问题的,需要咱们手动修改。
打开python的安装目录,就是你的python的安装位置,我的在D盘,找到D:\Python34\Lib\site-packages\xlwt3\formula.py这个文件,右键点击,使用IDLE打开
将其中的
修改为
就是把第一个" __init__ "删掉。
打开python shell
使用 import xlwt3 ,看看报不报错,没有报错说明修改成功。安装完成。
我们使用这个包主要是为了生成excel表格,将我们处理好的数据存到excel表格中。
为此,我们需要的是xlwt3里面的Workbook这个类。
先创建实例:
这样就创建完了一个实例。
我们知道,一个.xlsx文件或.xls文件称为一个工作簿,里面有好几张工作表,我们现在创建的这个Workbook()实例,它也是一个工作簿,我们要写入内容的话是要写进工作表里面的,这就需要我们创建一个工作表,工作表名是'test1'。
使用的是Workbook下属的add_sheet方法,add_sheet,新建工作表。
add_sheet(self, sheetname, cell_overwrite_ok=False)
需要注意的是,这个方法有两个参数
· 第一个是sheetname,这个是工作表的名字,必须要设置的
· 另一个参数是cell_overwrite_ok,这个参数是覆写的意思,默认是False,如果你现在要写的单元格里面,已经有内容了,就不能写了,如果你要是写的话会报错的。当然,我们在使用的时候,最好是设置成True。也就是上面的那个写法。这样对同一个单元格写入两次的话就不会报错了,当然,只会保留最后一次写入的值。
接下来可以写入信息了。
事实上,我们刚才使用add_sheet这个方法后,创建出了一个Worksheet类的实例。这个类有两个方法是我们需要使用的,一个是write,另一个是write_merge。前者用来写入一个单元格的内容,后者用来写入一个合并单元格的内容。
我们先看write方法,里面有四个参数,分别是r,c,label,style,
· r是行
· c是列
· label是内容
· style是格式
上面写的 table.write(1,0,'number') 是在第二行的第一列写入'number'这个字符串。
同理,另外两句分别是在第二行的第二列和第二行的第三列写入'name'和'score'这两个字符串。
write_merge是写合并单元格的方法
· r1是最上面的单元格所在的行数
· r2是最下面的单元格所在的行数
· c1是最左面的单元格所在的列数
· c2是最右面的单元格所在的列数
· label是要写入的内容
· style是格式
上面那个 table.write_merge(0,0,0,2,'Student information') ,是把第0行的第一列,第二列,第三列的单元格合并了,在里面写入'Student information'这个字符串。
如果我们写入信息的时候,不加style这个参数,那么里面的信息就是最普通的,没有什么格式,颜色啊,粗体啊,边框啊,什么的。
在xlwt3中,使用easyxf这个函数来设置单元格属性。
比如这句当中,我们可以看到传入了一个字符串作为参数:
'font: bold on, italic on, name 宋体, height 400, color red; align: vert centre, horiz centre; borders: top THIN,left THIN,right THIN,bottom THIN'
分解来看,这个字符串有三部分:
我们刚才不是用
创建了一个单元格属性吗,红色20号宋体,粗体,斜体,四周有边框,居中。
写入的使用加在作为style参数传入。
这样,我们就成功的设置单元格格式了。
接下来我们设置列宽。
使用这个方法就能设置列宽了,里面的0代表第一列,列宽是20。我也不知道这个列宽是怎么换算的,只要设置5293的话就是20,大家可以根据换算设置自己想要的列宽。
最后一步,保存我们建立的工作簿。
这里面就一个参数,你要保存的excel表格的文件名。需要加路径和后缀名的。需要注意的是,这个xlwt3只能保存成.xls的excel文件。
打开我们保存的excel表格。
可以看到,工作表名是我们设置的test1,第一行的前三个单元格合并了,内容是'Student information',红色20号宋体,粗体,斜体,四周有边框,居中。第二行分别是number,name,score。
以上就是创建这个excel表格的流程。
刚才上pypi发现,这个包好像就要被移除了,这样的话以后用pip就无法安装了。
xlwt3 0.1.2 : Python Package Index
以上就是关于xlwt3这个包的简单教程。
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 版本和环境的工具
p – 非常简单的交互式 python 版本管理工具。
pyenv – 简单的 Python 版本管理工具。
Vex – 可以在虚拟环境中执行命令。
virtualenv – 创建独立 Python 环境的工具。
virtualenvwrapper- virtualenv 的一组扩展。
包管理
管理包和依赖的工具。
pip – Python 包和依赖关系管理工具。
pip-tools – 保证 Python 包依赖关系更新的一组工具。
conda – 跨平台,Python 二进制包管理工具。
Curdling – 管理 Python 包的命令行工具。
wheel – Python 分发的新标准,意在取代 eggs。
包仓库
本地 PyPI 仓库服务和代理。
warehouse – 下一代 PyPI。
Warehousebandersnatch – PyPA 提供的 PyPI 镜像工具。
devpi – PyPI 服务和打包/测试/分发工具。
localshop – 本地 PyPI 服务(自定义包并且自动对 PyPI 镜像)。
分发
打包为可执行文件以便分发。
PyInstaller – 将 Python 程序转换成独立的执行文件(跨平台)。
dh-virtualenv – 构建并将 virtualenv 虚拟环境作为一个 Debian 包来发布。
Nuitka – 将脚本、模块、包编译成可执行文件或扩展模块。
py2app – 将 Python 脚本变为独立软件包(Mac OS X)。
py2exe – 将 Python 脚本变为独立软件包(Windows)。
pynsist – 一个用来创建 Windows 安装程序的工具,可以在安装程序中打包 Python本身。
构建工具
将源码编译成软件。
buildout – 一个构建系统,从多个组件来创建,组装和部署应用。
BitBake – 针对嵌入式 Linux 的类似 make 的构建工具。
fabricate – 对任何语言自动找到依赖关系的构建工具。
PlatformIO – 多平台命令行构建工具。
PyBuilder – 纯 Python 实现的持续化构建工具。
SCons – 软件构建工具。
交互式解析器
交互式 Python 解析器。
IPython – 功能丰富的工具,非常有效的使用交互式 Python。
bpython- 界面丰富的 Python 解析器。
ptpython – 高级交互式Python解析器, 构建于python-prompt-toolkit 之上。
文件
文件管理和 MIME(多用途的网际邮件扩充协议)类型检测。
imghdr – (Python 标准库)检测图片类型。
mimetypes – (Python 标准库)将文件名映射为 MIME 类型。
path.py – 对 os.path 进行封装的模块。
pathlib – (Python3.4+ 标准库)跨平台的、面向对象的路径操作库。
python-magic- 文件类型检测的第三方库 libmagic 的 Python 接口。
Unipath- 用面向对象的方式操作文件和目录
watchdog – 管理文件系统事件的 API 和 shell 工具
日期和时间
操作日期和时间的类库。
arrow- 更好的 Python 日期时间操作类库。
Chronyk – Python 3 的类库,用于解析手写格式的时间和日期。
dateutil – Python datetime 模块的扩展。
delorean- 解决 Python 中有关日期处理的棘手问题的库。
moment – 一个用来处理时间和日期的Python库。灵感来自于Moment.js。
PyTime – 一个简单易用的Python模块,用于通过字符串来操作日期/时间。
pytz – 现代以及历史版本的世界时区定义。将时区数据库引入Python。
when.py – 提供用户友好的函数来帮助用户进行常用的日期和时间操作。
文本处理
用于解析和操作文本的库。
通用
chardet – 字符编码检测器,兼容 Python2 和 Python3。
difflib – (Python 标准库)帮助我们进行差异化比较。
ftfy – 让Unicode文本更完整更连贯。
fuzzywuzzy – 模糊字符串匹配。
Levenshtein – 快速计算编辑距离以及字符串的相似度。
pangu.py – 在中日韩语字符和数字字母之间添加空格。
pyfiglet -figlet 的 Python实现。
shortuuid – 一个生成器库,用以生成简洁的,明白的,URL 安全的 UUID。
unidecode – Unicode 文本的 ASCII 转换形式 。
uniout – 打印可读的字符,而不是转义的字符串。
xpinyin – 一个用于把汉字转换为拼音的库。