10个顶级Python实用库推荐


Posted in Python onMarch 04, 2021

为什么我喜欢Python?对于初学者来说,这是一种简单易学的编程语言,另一个原因:大量开箱即用的第三方库,正是23万个由用户提供的软件包使得Python真正强大和流行。

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

1. Dash

Dash 是一个用于构建基于 Web 的应用程序的 Python 库,无需 JavaScript 。

Dash 同时也是用于创建分析 Web 应用程序的用户界面库。那些使用 Python 进行数据分析、数据挖掘、可视化、建模、仪器控制和报告的人可以立即使用 Dash 。

10个顶级Python实用库推荐

Dash 建立在 Plotly.js、React 和 Flask 之上,将现代 UI 元素(如下拉列表、滑块和图形)与你的分析 Python 代码相结合。

项目地址:

https://github.com/plotly/dash

2. Pillow

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

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

10个顶级Python实用库推荐

帮助文档:

https://pillow-cn.readthedocs.io/zh_CN/latest/
https://pillow.readthedocs.io/en/stable/

3. Colorama

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

10个顶级Python实用库推荐

项目地址:

github.com/tartley/colorama

4. JmesPath

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

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

>>> import jmespath
>>> path = jmespath.search('foo.bar', {'foo': {'bar': 'baz'}})
'baz'

项目地址:

https://github.com/jmespath/jmespath.py

5. Simplejson

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

  • 它适用于更多Python版本。
  • 它比Python随附的版本更新频率更高。
  • 它具有用C编写的(可选)部分,因此非常快速。

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

10个顶级Python实用库推荐

项目地址:

https://github.com/simplejson/simplejson

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

6. Emoji

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

10个顶级Python实用库推荐

项目地址:

https://github.com/carpedm20/emoji/

7. 进度条:progress和tqdm

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

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

progress

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

from progress.bar import Bar

bar = Bar('Processing', max=20)
for i in range(20):
 # Do some work
 bar.next()
bar.finish()

tqdm

tqdm的功能大致相同,但似乎是最新的。

from tqdm import tqdm
for i in tqdm(range(10000)):
 ...

以gif动画形式进行一些演示:

10个顶级Python实用库推荐

8. Homeassistant

home assistant是一个运行在python 3上的家庭自动化平台。它能够在家里对所有设备进行跟踪和控制,为自动化控制提供了一个平台。

10个顶级Python实用库推荐

它现在控制着我们房屋的大部分。我使用Home Assistant将房子中的所有系统捆绑在一起。尽管它确实是一个完整的应用程序,但是您也可以将其安装为Python PyPI软件包。

  • 大多数灯具都是自动化的,百叶窗也是如此。
  • 监视我们的天然气用量,电力用量和产量(太阳能电池板)。
  • 可以跟踪大多数电话的位置,并在进入一个区域时开始操作,例如当我回家时打开车库灯。
  • 它还可以控制我们所有的娱乐系统,例如三星电视和Sonos扬声器。
  • 它能够自动发现网络上的大多数设备,因此上手起来非常容易。

项目地址:

https://github.com/home-assistant/core

9. Python-dateutil

python-dateutil模块提供了对标准datetime模块的强大扩展。

您可以使用此库做很多很棒的事情。比如计算相对增量(下个月,明年,下周一,该月的最后一周等)和两个给定日期对象之间的相对增量。

项目地址:

https://github.com/dateutil/dateutil/

10. Pygame

Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发

10个顶级Python实用库推荐

允许你在 Python 程序中创建功能丰富的游戏和多媒体程序,旨在提供对以下内容的低级接口:

  • 音频
  • 键盘
  • 鼠标
  • 游戏杆
  • 基于OpenGL和Direct3D的图形硬件

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

以上就是10个顶级Python实用库推荐的详细内容,更多关于Python实用库推荐的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python实现豆瓣图片下载的方法
May 25 Python
Python win32com 操作Exce的l简单方法(必看)
May 25 Python
使用python实现knn算法
Dec 20 Python
利用TensorFlow训练简单的二分类神经网络模型的方法
Mar 05 Python
使用PyCharm创建Django项目及基本配置详解
Oct 24 Python
使用Python计算玩彩票赢钱概率
Jun 26 Python
python画图--输出指定像素点的颜色值方法
Jul 03 Python
python创建与遍历List二维列表的方法
Aug 16 Python
Python3.7将普通图片(png)转换为SVG图片格式(网站logo图标)动起来
Apr 21 Python
使用python实现时间序列白噪声检验方式
Jun 03 Python
对Python 字典元素进行删除的方法
Jul 31 Python
Python经常使用的一些内置函数
Apr 11 Python
pytorch 把图片数据转化成tensor的操作
Mar 04 #Python
pytorch 计算Parameter和FLOP的操作
Mar 04 #Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
Mar 04 #Python
python 如何用urllib与服务端交互(发送和接收数据)
Mar 04 #Python
python 求两个向量的顺时针夹角操作
Mar 04 #Python
python 制作磁力搜索工具
Mar 04 #Python
python抢购软件/插件/脚本附完整源码
Mar 04 #Python
You might like
php图片上传存储源码并且可以预览
2011/08/26 PHP
PHP对象转换为数组函数(递归方法)
2012/02/04 PHP
php header功能的使用
2013/10/28 PHP
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
浅析php原型模式
2014/11/25 PHP
两种常用的javascript数组去重方法思路及代码
2013/03/26 Javascript
JavaScript中window、doucment、body的解释
2013/08/14 Javascript
在JavaScript中使用NaN值的方法
2015/06/05 Javascript
JS仿百度自动下拉框模糊匹配提示
2016/07/25 Javascript
Vue.js实战之利用vue-router实现跳转页面
2017/04/01 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
angular实现input输入监听的示例
2018/08/31 Javascript
在vue中使用vue-echarts-v3的实例代码
2018/09/13 Javascript
JS异步执行结果获取的3种解决方式
2019/02/19 Javascript
Vue快速实现通用表单验证功能
2019/12/05 Javascript
浅谈Vue2.4.0 $attrs与inheritAttrs的具体使用
2020/03/08 Javascript
Vue微信公众号网页分享的示例代码
2020/05/28 Javascript
小程序自定义圆形进度条
2020/11/17 Javascript
[02:05]2014DOTA2西雅图邀请赛 专访啸天mik夫妻档
2014/07/08 DOTA
[00:16]热血竞技场
2019/03/06 DOTA
Python常用模块用法分析
2014/09/08 Python
Python中str is not callable问题详解及解决办法
2017/02/10 Python
python实现将一个数组逆序输出的方法
2018/06/25 Python
Python 多线程,threading模块,创建子线程的两种方式示例
2019/09/29 Python
如何使用selenium和requests组合实现登录页面
2020/02/03 Python
html5 canvas合成海报所遇问题及解决方案总结
2017/08/03 HTML / CSS
Canvas波浪花环的示例代码
2020/08/21 HTML / CSS
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
2012/06/27 面试题
阿德的梦教学反思
2014/02/06 职场文书
革命电影观后感
2015/06/18 职场文书
2019新员工试用期转正申请书3篇
2019/08/13 职场文书
Django中的JWT身份验证的实现
2021/05/07 Python
帮你提高开发效率的JavaScript20个技巧
2021/06/18 Javascript
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript
德劲DE1107指针试高灵敏度全波段收音机机评
2022/04/05 无线电