Python 中有哪些让人眼前一亮的工具?
作为最流行的编程语言之一,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电子版。如果你是刚入门的小白,不用想了,这是最好的学习教材。
现在免费分享出来,有需要的读者可以下载学习,在下面的公众号里回复关键字:三件套,就行。
领取方式:
长按扫码,发消息 [三件套]