为什么我喜欢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. hdu2669Romantic (扩展欧几里德)

    Problem Description The Sky is Sprite. The Birds is Fly in the Sky. The Wind is Wonderful. Blew Thro ...

  2. poj1061青蛙的约会 (扩展欧几里德)

    Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事 ...

  3. Codeforces Round #660 (Div. 2) C. Uncle Bogdan and Country Happiness (DFS)

    题意:有\(n\)个人,每个人居住在某个节点,所有人都在节点\(1\)上班,下班后沿着最短路径回家,在回家途中心情可能会变差(心情只会变差不会变好),每个节点都有一个开心值,开心值等于所有经过时的好心 ...

  4. GYM101810 ACM International Collegiate Programming Contest, Amman Collegiate Programming Contest (2018) M. Greedy Pirate (LCA)

    题意:有\(n\)个点,\(n-1\)条边,每条边正向和反向有两个权值,且每条边最多只能走两次,有\(m\)次询问,问你从\(u\)走到\(v\)的最大权值是多少. 题解:可以先在纸上画一画,不难发现 ...

  5. 读js DOM编程艺术总结

    第一章主要介绍一些历史性问题,javascript是Netcape和sun公司合作开发的. 第二章JavaScript语法: 1,数据类型:(弱类型)字符串,数值,布尔值(只有true和false,不 ...

  6. LeetCode Binary Search All In One

    LeetCode Binary Search All In One Binary Search 二分查找算法 https://leetcode-cn.com/problems/binary-searc ...

  7. Regular Expression & rgb2hex

    Regular Expression & rgb2hex regex // 颜色字符串转换 function rgb2hex(sRGB = 'rgb(255, 255, 255)') { co ...

  8. W3Schools Quizzes

    W3Schools Quizzes Test your skills https://www.w3schools.com/quiztest/default.asp Quiz HOME Quiz HTM ...

  9. react & redux data flow diagram

    react & redux data flow diagram Redux 数据流程图

  10. how to create one single-file Web Component just using the HTML, CSS, JavaScript

    how to create one single-file Web Component just using the HTML, CSS, JavaScript web components html ...