目录:

  1、Bashplotlib 在命令行中绘制数据

  2、PrettyTable 格式输出表

  3、FuzzyWuzzy 为程序实现模糊搜索功能

  4、TQDM 进度条

  5、Colorama 为命令行程序添加颜色

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 为你提供开箱即用且重量轻的解决方案。

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)

 

posted on 2021-03-10 22:08  始终不够啊  阅读(155)  评论(0编辑  收藏  举报