Python 中有哪些让人眼前一亮的工具?

ぐ巨炮叔叔 提交于 2021-01-24 02:53:57

作为最流行的编程语言之一,Python 拥有大量优秀的库,如Pandas、Numpy、Matplotlib、SciPy 等,它们极大的提升了开发速度。

在这篇文章中,我给大家分享一些让人眼前一亮的库,这些库不仅有趣,而且非常实用,同时也展示 Python 社区的蓬勃发展。

1、Bashplotlib

老实说, 当我第一次看到这个库时, 我质疑为什么人们可能需要这个呢?Bashplotlib 是一个 Python 库,使我们能够在命令行粗旷的环境中绘制数据。

很快我意识到,如果我们没有可用的GUI时,它可能会很有用。这种情况可能不会那么频繁,但它却是一个非常有趣的Python库。

安装

pip install bashplotlib

让我们看看一些例子

此外,还可以从文本文件的散点图中绘制数据

2、PrettyTable

我刚刚介绍的 Bashplotlib 用于在命令行环境中绘制数据,而 PrettyTable 则用于漂亮的格式输出表。

安装

pip install prettytable

让我们看个例子

from prettytable import PrettyTable
table = PrettyTable()
table.field_names = ['Name''Age''City']
table.add_row(["Alice"20"Adelaide"])
table.add_row(["Bob"20"Brisbane"])
table.add_row(["Chris"20"Cairns"])
table.add_row(["David"20"Sydney"])
table.add_row(["Ella"20"Melbourne"])
print(table)

PrettyTable 支持优化表功能。例如,可以右对齐表中的文本:

table.align = 'r'
print(table)

对表进行排序

table.sortby = "City"
print(table)

甚至可以获取表的 HTML 字符串

3、FuzzyWuzzy

在我看来,FuzzyWuzzy 不仅有趣,而且很有用。很多时候,可能希望为程序实现"模糊"搜索功能。FuzzyWuzzy 为你提供开箱即用且重量轻的解决方案。

安装

pip install fuzzywuzzy

让我们做一个简单的测试

from fuzzywuzzy import fuzz
fuzz.ratio("Let’s do a simple test""Let us do a simple test")

上面结果"93"意味着这两个字符串具有 93% 的相似性,这已相当高。

当你有字符串列表,并且要针对所有这些字符串搜索一个术语时,FuzzyWuzzy 将帮助提取最相关的字符串及其相似性。

from fuzzywuzzy import process
choices = ["Data Visualisation""Data Visualization""Customised Behaviours""Customized Behaviors"]
process.extract("data visulisation", choices, limit=2)
process.extract("custom behaviour", choices, limit=2)

4、TQDM

你是否通常使用 Python 开发命令行工具?如果是这样,这个有趣的库将帮助你,当你正在处理一些耗时的东西,通过显示进度条,来指示已经做了多少。

安装

pip install tqdm

使用 for 循环函数时,只需将其替换为 trange

from tqdm import trange
for i in trange(100):
    sleep(0.01)

tqdm 不仅适用于命令行环境,还适用于 iPython/Jupyter 笔记本

5、Colorama

是否要为命令行程序添加一些颜色?Colorama 可以使你喜欢的颜色输出变得非常简单。

安装

pip install colorama

我们可以导入

from colorama import Fore, Back, Style

首先,让我们用黄色显示一些警告

print(Fore.YELLOW)
print("This is a warning!")

然后让我们尝试使用红色背景颜色显示一些错误

print(Back.RED + Fore.WHITE + "This is an error!")

当我们想要将一切恢复正常时,只需将"样式"设置为"RESET_ALL"

print(Style.RESET_ALL)

总结

在看过 Bashplotlib 库之前,不得不说,在命令行环境中绘制数据,我从未有过这样的想法。这五个库不仅让人眼前一亮,而且非常实用,相信在以后的工作中可以提高你的生产力。

大家好,最后给大家免费分享 Python 三件套:《ThinkPython》、《简明Python教程》、《Python进阶》的PDF电子版。如果你是刚入门的小白,不用想了,这是最好的学习教材。

现在免费分享出来,有需要的读者可以下载学习,在下面的公众号里回复关键字:三件套,就行。

领取方式:

长按扫码,发消息 [三件套]


本文分享自微信公众号 - Python学习与数据挖掘(Python_CaiNiao)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!