Python 高级库15 个让新手爱不释手(推荐)


Posted in Python onMay 15, 2021

在本文中,我挑选了15个最有用的软件包,介绍它们的功能和特点

1. Dash

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

Python 高级库15 个让新手爱不释手(推荐)

图片

2. Pygame

Pygame 是 SDL 多媒体库的 Python 装饰器,SDL(Simple DirectMedia Layer)是一个跨平台开发库,旨在提供对以下内容的低级接口:

音频

键盘

鼠标

游戏杆

基于 OpenGL 和 Direct3D 的图形硬件

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

3. Pillow

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

为了快速了解它,看以下代码示例(加载并渲染):

Python 高级库15 个让新手爱不释手(推荐)

图片

4. Colorama

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

Python 高级库15 个让新手爱不释手(推荐)

图片

5. JmesPath

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

JMESPath使Python处理JSON更加容易,它允许您明确的地指定如何从JSON文档中提取元素。以下是一些基本示例,可让您对它的功能有所了解:

Python 高级库15 个让新手爱不释手(推荐)

图片

6. Requests

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

以下代码示例说明requests的使用是多么简单。

Python 高级库15 个让新手爱不释手(推荐)

图片

Requests可以完成您能想到的所有高级工作,例如:

认证

使用cookie

执行POST,PUT,DELETE等

使用自定义证书

使用会话Session

使用代理

7. Simplejson

Python中的本地json模块有什么问题?没有!实际上,Python的json是simplejson。意思是,Python采用了simplejson的一个版本,并将其合并到每个发行版中。但是使用simplejson具有一些优点:

它适用于更多Python版本。

它比Python随附的版本更新频率更高。

它具有用C编写的(可选)部分,因此非常快速。

由于这些事实,您经常会在使用JSON的脚本中看到以下内容:

Python 高级库15 个让新手爱不释手(推荐)

图片

我将只使用默认的json,除非您特别需要:

速度

标准库中没有的东西

搜索公众号顶级架构师后台回复“面试”,获取一份惊喜礼包。

Simplejson比json快很多,因为它用C实现一些关键部分。除非您正在处理数百万个JSON文件,否则您不会对这种速度感兴趣。

8. Emoji

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

Python 高级库15 个让新手爱不释手(推荐)

图片

以下是简单的代码示例:

Python 高级库15 个让新手爱不释手(推荐)

图片

9. Chardet

您可以使用chardet模块来检测文件或数据流的字符集。例如,这在分析大量随机文本时很有用。但是,当您不知道字符集是什么时,也可以在处理远程下载的数据时使用它。

10. Python-dateutil

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

您可以使用此库做很多很棒的事情。我将这些示例限制为我发现特别有用的示例:模糊分析日志文件中的日期,例如:

Python 高级库15 个让新手爱不释手(推荐)

图片

有关更多功能,请参见完整文档,例如:

计算相对增量(下个月,明年,下周一,该月的最后一周等)和两个给定日期对象之间的相对增量。

使用iCalendar规范的超集,根据重复规则计算日期。

tzfile文件(/ etc / localtime,/ usr / share / zoneinfo等)的时区(tzinfo)实现,TZ环境字符串(所有已知格式),iCalendar格式文件,给定范围(在相对增量的帮助下),本地计算机 时区,固定偏移时区,UTC时区和基于Windows注册表的时区。

基于奥尔森数据库的内部最新世界时区信息。

使用Western,Orthodox或Julian算法计算任意一年的复活节周日日期。

11. 进度条:progress和tqdm

这里有点作弊,因为这是两个包,但忽略其中之一是不公平的。

您可以创建自己的进度条,这也许很有趣,但是使用progress或tqdm程序包更快,更不容易出错。

progress

借助这个软件包,您可以轻松创建进度条:

Python 高级库15 个让新手爱不释手(推荐)

图片

Python 高级库15 个让新手爱不释手(推荐)

图片

tqdm

tqdm的功能大致相同,但似乎是最新的。首先以gif动画形式进行一些演示:

Python 高级库15 个让新手爱不释手(推荐)

图片

12. IPython

Python 高级库15 个让新手爱不释手(推荐)

图片

我确定您知道Python的交互式外壳,这是运行Python的好方法。但是您也知道IPython shell吗?如果您经常使用交互式外壳程序,但您不了解IPython,则应该检查一下!

增强的IPython shell提供的一些功能包括:

全面的对象自省。

输入历史记录,跨会话持续存在。

在具有自动生成的引用的会话期间缓存输出结果。

制表符补全,默认情况下支持python变量和关键字,文件名和函数关键字的补全。

“魔术”命令,用于控制环境并执行许多与IPython或操作系统相关的任务。

会话记录和重新加载。

对pdb调试器和Python分析器的集成访问。

IPython的一个鲜为人知的功能:它的体系结构还允许并行和分布式计算。

IPython是Jupyter Notebook的核心,它是一个开放源代码Web应用程序,可让您创建和共享包含实时代码,方程式,可视化效果和叙述文本的文档。

13. Homeassistant

我喜欢家庭自动化。这对我来说是一种嗜好,但我至今仍对此深表歉意,因为它现在控制着我们房屋的大部分。我使用Home Assistant将房子中的所有系统捆绑在一起。尽管它确实是一个完整的应用程序,但是您也可以将其安装为Python PyPI软件包。

Python 高级库15 个让新手爱不释手(推荐)

图片

我们的大多数灯具都是自动化的,百叶窗也是如此。

我监视我们的天然气用量,电力用量和产量(太阳能电池板)。

我可以跟踪大多数电话的位置,并在进入一个区域时开始操作,例如当我回家时打开车库灯。

它还可以控制我们所有的娱乐系统,例如三星电视和Sonos扬声器。

它能够自动发现网络上的大多数设备,因此上手起来非常容易。

我已经每天使用Home Assistant已有3年了,它仍处于测试阶段,但这是我尝试过的所有平台中最好的平台。它能够集成和控制各种设备和协议,并且都是免费和开源的。

如果您有兴趣将房屋自动化,请确保有机会!如果您想了解更多,请访问他们的官方网站。如果可以,请将其安装在Raspberry Pi上。到目前为止,这是最简单,最安全的入门方法。我将其安装在Docker容器内功能更强大的服务器上。

14. Flask

Flask是我的入门库,用于创建快速的Web服务或简单的网站。这是一个微框架,这意味着Flask旨在使核心保持简单但可扩展。有700多个官方和社区扩展。

如果您知道自己将开发一个大型的Web应用程序,则可能需要研究一个更完整的框架。该类别中最受欢迎的是Django。

15. BeautifulSoup

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

它的一些主要功能:

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

Beautiful Soup位于流行的Python解析器(如lxml和html5lib)的顶部,使您可以尝试不同的解析策略或提高灵活性。

BeautifulSoup会解析您提供的任何内容,并为您做遍历树的工作。您可以将其告诉“查找所有链接”,或“查找带有粗体的表格标题,然后给我该文字。”

以上就是Python 高级库15 个让新手爱不释手(推荐)的详细内容,更多关于Python 高级库的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python字符串逐字符或逐词反转方法
May 21 Python
python冒泡排序简单实现方法
Jul 09 Python
Python实现将数据库一键导出为Excel表格的实例
Dec 30 Python
Python比较2个时间大小的实现方法
Apr 10 Python
python实现控制台打印的方法
Jan 12 Python
python获取交互式ssh shell的方法
Feb 14 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
python实现植物大战僵尸游戏实例代码
Jun 10 Python
python使用opencv实现马赛克效果示例
Sep 28 Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
Aug 18 Python
python 写一个文件分发小程序
Dec 05 Python
Pandas 稀疏数据结构的实现
Jul 25 Python
Python带你从浅入深探究Tuple(基础篇)
May 15 #Python
Python中zipfile压缩包模块的使用
python 制作一个gui界面的翻译工具
pyqt5打包成exe可执行文件的方法
Python 机器学习工具包SKlearn的安装与使用
python process模块的使用简介
May 14 #Python
django学习之ajax post传参的2种格式实例
May 14 #Python
You might like
eAccelerator的安装与使用详解
2013/06/13 PHP
PHP模拟QQ登录的方法
2015/07/29 PHP
详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
2015/07/31 PHP
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
2015/11/30 Javascript
JS点击某个图标或按钮弹出文件选择框的实现代码
2016/09/27 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
React Native预设占位placeholder的使用
2017/09/28 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
JS脚本加载后执行相应回调函数的操作方法
2018/02/28 Javascript
React Native悬浮按钮组件的示例代码
2018/04/05 Javascript
layUI使用layer.open,在content打开数据表格,获取值并返回的方法
2019/09/26 Javascript
17个Python小技巧分享
2015/01/23 Python
python检测远程udp端口是否打开的方法
2015/03/14 Python
Python实现把json格式转换成文本或sql文件
2015/07/10 Python
Python读写unicode文件的方法
2015/07/10 Python
Python实现Linux的find命令实例分享
2017/06/04 Python
python3.x实现base64加密和解密
2019/03/28 Python
Django分组聚合查询实例分享
2020/04/29 Python
Python sqlalchemy时间戳及密码管理实现代码详解
2020/08/01 Python
python help函数实例用法
2020/12/06 Python
纽约的奢华内衣店:Journelle
2016/07/29 全球购物
Stefania Mode美国:奢华设计师和时尚服装
2018/01/07 全球购物
俄罗斯药房连锁店:ASNA
2020/06/20 全球购物
MVC的各个部分都有那些技术来实现?如何实现?
2016/04/21 面试题
总经理驾驶员岗位职责
2013/12/04 职场文书
土木建筑学生自我评价
2014/01/14 职场文书
安全教育演讲稿
2014/05/09 职场文书
关于奉献的演讲稿
2014/05/21 职场文书
小学课外活动总结
2014/07/09 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
2019最新版火锅店的创业计划书 !
2019/07/12 职场文书
七个Python必备的GUI库
2021/04/27 Python
java开发双人五子棋游戏
2022/05/06 Java/Android