雪涵爽 發表於 2021-3-4 13:40:00

10个顶级Python实用库,推荐你试试!

<p>为什么我喜欢Python?对于初学者来说,这是一种简单易学的编程语言,另一个原因:大量开箱即用的第三方库,正是23万个由用户提供的软件包使得Python真正强大和流行。</p>
<p>在本文中,我挑选了15个最有用的软件包,介绍它们的功能和特点。</p>
<h2 id="1-dash">1. Dash</h2>
<p>Dash 是一个用于构建基于 Web 的应用程序的 Python 库,无需 JavaScript 。</p>
<p>Dash 同时也是用于创建分析 Web 应用程序的用户界面库。那些使用 Python 进行数据分析、数据挖掘、可视化、建模、仪器控制和报告的人可以立即使用 Dash 。</p>
<p><img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0oiadm1bj31bc0u0arw.jpg" alt="" loading="lazy"></p>
<p>Dash 建立在 Plotly.js、React 和 Flask 之上,将现代 UI 元素(如下拉列表、滑块和图形)与你的分析 Python 代码相结合。</p>
<p>项目地址:</p>
<pre><code>https://github.com/plotly/dash
</code></pre>
<h2 id="2-pillow">2. Pillow</h2>
<p>Pillow专门用于处理图像,您可以使用该库创建缩略图,在文件格式之间转换,旋转,应用滤镜,显示图像等等。如果您需要对许多图像执行批量操作,这是理想的选择。</p>
<p>为了快速了解它,看以下代码示例(加载并渲染图片):<br>
<img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0om1t2bzj310w0760tw.jpg" alt="" loading="lazy"><br>
帮助文档:</p>
<pre><code>https://pillow-cn.readthedocs.io/zh_CN/latest/
https://pillow.readthedocs.io/en/stable/
</code></pre>
<h2 id="3-colorama">3. Colorama</h2>
<p>Colorama允许你在终端使用颜色,非常适合Python脚本,文档简短而有趣,可以在Colorama PyPI页面上找到。<br>
<img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0onj2twfj30id09xaby.jpg" alt="" loading="lazy"></p>
<p>项目地址:</p>
<pre><code>https://github.com/tartley/colorama
</code></pre>
<h2 id="4-jmespath">4. JmesPath</h2>
<p>在Python中使用JSON非常容易,因为JSON在Python字典上的映射非常好。此外,Python带有自己出色的json库,用于解析和创建JSON。对我来说,这是它最好的功能之一。如果我需要使用JSON,可以考虑使用Python。</p>
<p>JMESPath使Python处理JSON更加容易,它允许您明确的地指定如何从JSON文档中提取元素。以下是一些基本示例,可让您对它的功能有所了解:</p>
<pre><code>&gt;&gt;&gt; import jmespath
&gt;&gt;&gt; path = jmespath.search('foo.bar', {'foo': {'bar': 'baz'}})
'baz'
</code></pre>
<p>项目地址:</p>
<pre><code>https://github.com/jmespath/jmespath.py
</code></pre>
<h2 id="5-simplejson">5. Simplejson</h2>
<p>Python中的本地json模块有什么问题?没有!实际上,Python的json是simplejson。意思是,Python采用了simplejson的一个版本,并将其合并到每个发行版中。但是使用simplejson具有一些优点:</p>
<ul>
<li>它适用于更多Python版本。</li>
<li>它比Python随附的版本更新频率更高。</li>
<li>它具有用C编写的(可选)部分,因此非常快速。</li>
</ul>
<p>由于这些事实,您经常会在使用JSON的脚本中看到以下内容:<br>
<img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0otqak9zj30np03z3ym.jpg" alt="" loading="lazy"></p>
<p>项目地址:</p>
<pre><code>https://github.com/simplejson/simplejson
</code></pre>
<p>Simplejson比json快很多,因为它用C实现一些关键部分。除非您正在处理数百万个JSON文件,否则您不会对这种速度感兴趣。</p>
<h2 id="6-emoji">6. Emoji</h2>
<p>Emoji库非常有意思,但并非每个人都喜欢表情包,分析视角媒体数据时,Emoji包非常有用。<br>
<img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0oweohk4j312y0py4qp.jpg" alt="" loading="lazy"><br>
项目地址:</p>
<pre><code>https://github.com/carpedm20/emoji/
</code></pre>
<h2 id="7-进度条progress和tqdm">7. 进度条:progress和tqdm</h2>
<p>这里有点作弊,因为这是两个包,但忽略其中之一是不公平的。</p>
<p>您可以创建自己的进度条,这也许很有趣,但是使用progress或tqdm程序包更快,更不容易出错。</p>
<p><strong>progress</strong></p>
<p>借助这个软件包,您可以轻松创建进度条:</p>
<pre><code>from progress.bar import Bar

bar = Bar('Processing', max=20)
for i in range(20):
    # Do some work
    bar.next()
bar.finish()
</code></pre>
<p><strong>tqdm</strong></p>
<p>tqdm的功能大致相同,但似乎是最新的。</p>
<pre><code>from tqdm import tqdm
for i in tqdm(range(10000)):
    ...
</code></pre>
<p>以gif动画形式进行一些演示:<br>
<img src="https://warehouse-camo.ingress.cmh1.psfhosted.org/2d537ee9f78b801c46be1c6d631cc2232c760542/68747470733a2f2f7261772e67697468756275736572636f6e74656e742e636f6d2f7471646d2f696d672f6d61737465722f7471646d2e676966" alt="" loading="lazy"></p>
<h2 id="8-homeassistant">8. Homeassistant</h2>
<p>home assistant是一个运行在python 3上的家庭自动化平台。它能够在家里对所有设备进行跟踪和控制,为自动化控制提供了一个平台。<br>
<img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0p5s7bwrj30nw0m1whu.jpg" alt="" loading="lazy"><br>
它现在控制着我们房屋的大部分。我使用Home Assistant将房子中的所有系统捆绑在一起。尽管它确实是一个完整的应用程序,但是您也可以将其安装为Python PyPI软件包。</p>
<ul>
<li>大多数灯具都是自动化的,百叶窗也是如此。</li>
<li>监视我们的天然气用量,电力用量和产量(太阳能电池板)。</li>
<li>可以跟踪大多数电话的位置,并在进入一个区域时开始操作,例如当我回家时打开车库灯。</li>
<li>它还可以控制我们所有的娱乐系统,例如三星电视和Sonos扬声器。</li>
<li>它能够自动发现网络上的大多数设备,因此上手起来非常容易。<br>
项目地址:</li>
</ul>
<pre><code>https://github.com/home-assistant/core
</code></pre>
<h2 id="9-python-dateutil">9. Python-dateutil</h2>
<p>python-dateutil模块提供了对标准datetime模块的强大扩展。</p>
<p>您可以使用此库做很多很棒的事情。比如计算相对增量(下个月,明年,下周一,该月的最后一周等)和两个给定日期对象之间的相对增量。</p>
<p>项目地址:</p>
<pre><code>https://github.com/dateutil/dateutil/
</code></pre>
<h2 id="10-pygame">10. Pygame</h2>
<p>Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发。<br>
<img src="https://tva1.sinaimg.cn/large/008eGmZEgy1go0pdopyxuj308w08cmxz.jpg" alt="" loading="lazy"><br>
允许你在 Python 程序中创建功能丰富的游戏和多媒体程序,旨在提供对以下内容的低级接口:</p>
<ul>
<li>音频</li>
<li>键盘</li>
<li>鼠标</li>
<li>游戏杆</li>
<li>基于OpenGL和Direct3D的图形硬件</li>
</ul>
<p>Pygame具有高度的可移植性,几乎可以在所有平台和操作系统上运行。尽管它具有完善的游戏引擎,但您也可以使用此库直接从Python脚本播放MP3文件。</p>


</div>
<div id="MySignature" role="contentinfo">
    技术改变世界!
         --狂诗绝剑<br><br>
来源:https://www.cnblogs.com/jinjiangongzuoshi/p/14479785.html
頁: [1]
查看完整版本: 10个顶级Python实用库,推荐你试试!