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

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

1. Dash

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

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

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

项目地址:

https://github.com/plotly/dash

2. Pillow

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

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



帮助文档:

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

3. Colorama

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

项目地址:

https://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的脚本中看到以下内容:

项目地址:

https://github.com/simplejson/simplejson

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

6. Emoji

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



项目地址:

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动画形式进行一些演示:

8. Homeassistant

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



它现在控制着我们房屋的大部分。我使用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 库的基础上开发。



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

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

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

10个顶级Python实用库,推荐你试试!的更多相关文章

  1. 6个顶级Python NLP库的比较!

    6个顶级Python NLP库的比较! http://blog.itpub.net/31509949/viewspace-2212320/ 自然语言处理(NLP)如今越来越流行,在深度学习开发的背景下 ...

  2. python实用库:PrettyTable 学习

    python实用库:PrettyTable 学习 PrettyTable说明 PrettyTable 是python中的一个第三方库,可用来生成美观的ASCII格式的表格,十分实用. 以下为官方介绍: ...

  3. python实用库

    参考:https://github.com/programthink/opensource/blob/master/libs/python.wiki#35_ Python 开源库及示例代码 Table ...

  4. 10 个顶级 JavaScript 动画框架推荐

    使用JavaScript可以做出一些引人注目的动画效果,但通常不太容易实现.本文为你整理了10个非常优秀的JavaScript动画框架,使用它们你可以轻松实现动画效果.1. RaphaëlRaphaë ...

  5. python第三方库推荐 - 通过ntplib在windows上同步时间

    很多时候我们有通过程序脚本同步校正北京时间的需求. 在linux上同步时间比较方便,安装个ntpdate软件就行了. 但是在windows的要同步时间比较麻烦. 这时想到的就是从网络获取一个准确的时间 ...

  6. python第三方库推荐 - dateutil

    在dateutil中,吸引我的东西有2个,1个是parser,1个是rrule. 其中parser是根据字符串解析成datetime,而rrule是则是根据定义的规则来生成datetime. 安装 没 ...

  7. 顶级Python库

    绝不能错过的24个顶级Python库 Python有以下三个特点: · 易用性和灵活性 · 全行业高接受度:Python无疑是业界最流行的数据科学语言 · 用于数据科学的Python库的数量优势 事实 ...

  8. 3 个用于数据科学的顶级 Python 库

    使用这些库把 Python 变成一个科学数据分析和建模工具. Python 的许多特性,比如开发效率.代码可读性.速度等使之成为了数据科学爱好者的首选编程语言.对于想要升级应用程序功能的数据科学家和机 ...

  9. 探讨2018年最受欢迎的15顶级Python库!

    近日,数据科学网站 KDnuggets 评选出了顶级 Python 库 Top15,领域横跨数据科学.数据可视化.深度学习和机器学习.如果本文有哪些遗漏,你可以在评论区补充. 图 1:根据 GitHu ...

随机推荐

  1. P1541 乌龟棋(DP)

    题目背景 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 题目描述 乌龟棋的棋盘是一行NNN个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第NNN格是终点,游戏要求玩家控制一个乌龟 ...

  2. hdu4339 Query

    Problem Description You are given two strings s1[0..l1], s2[0..l2] and Q - number of queries. Your t ...

  3. Codeforces Round #496 (Div. 3) E1. Median on Segments (Permutations Edition) (中位数,思维)

    题意:给你一个数组,求有多少子数组的中位数等于\(m\).(若元素个数为偶数,取中间靠左的为中位数). 题解:由中位数的定义我们知道:若数组中\(<m\)的数有\(x\)个,\(>m\)的 ...

  4. Vue的七种传值方式

    目录 1,父传子 2,子传父 3,兄弟组件传值 4,父组件使用子组件的数据和方法 5,子组件使用父组件的数据和方法 6,Vuex传值 6.1,定义store 6.2,挂载 6.3,使用 7,路由传值 ...

  5. HDU - 4722 Good Numbers 【找规律 or 数位dp模板】

    If we sum up every digit of a number and the result can be exactly divided by 10, we say this number ...

  6. Virtualbox 安装centos7虚拟机

    Virtualbox 安装centos7虚拟机 一,下载centos7 下载地址:https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/isos/x ...

  7. shit vuepress docs

    shit vuepress docs https://deploy-preview-2764--vuepress.netlify.app/guide/directory-structure.html ...

  8. 快速下载 Visual Studio Code

    快速下载 Visual Studio Code https://visualstudio.microsoft.com/zh-hant/downloads/ 切换 cdn https://az76429 ...

  9. Chrome offline game & source codes hacker

    Chrome offline game & source codes hacker dino === little dinosaur chrome://dino/ 手动 offline htt ...

  10. 两百万SPC空投来袭,带动市场热情!

    NGK投放项目的时间节点总是以牛市为主,像是上一次的BGV项目投放就在2020年末的数字加密货币牛市,其结果想必各位生态建设者们都已经见到了,在登陆交易所首日便高收于近889美金,创下惊人的近一千七百 ...