2

盘点十个让工作效率倍增且有趣的 Python工具包!

 2 years ago
source link: https://www.51cto.com/article/719195.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

盘点十个让工作效率倍增且有趣的 Python工具包!

作者:喜欢就关注呀 2022-09-20 15:43:58
大家好,今天给大家盘点10个让工作更效率,编程更有趣的 Python 工具包,一起来了解一下。

大家好,今天给大家盘点10个让工作更效率,编程更有趣的 Python 工具包,一起来了解一下。

1 PrettyErrors

PrettyErrors是一款可以让Python抛出的异常变得通俗易懂的强大工具。

官网的示例:

图片

可以看出,出错的文件、所在行、所在函数或模块都被用不同的颜色标记出来,比起左边密密麻麻、眼花缭乱的错误提示,显然是优化过的提示更人性化!

这个工具有两种安装方式:

# 全局安装
python -m pip install pretty_errors

# 局部项目使用
import pretty_errors
pretty_errors.configure(
 separator_character = '*',
 filename_display    = pretty_errors.FILENAME_EXTENDED,
 line_number_first   = True,
 display_link        = True,
 lines_before        = 5,
 lines_after         = 2,
 line_color          = pretty_errors.RED + '> ' + pretty_errors.default_config.line_color,
 code_color          = '  ' + pretty_errors.default_config.line_color,
 truncate_code       = True,
 display_locals      = True
 )
 pretty_errors.blacklist('c:/python')

2 Rich

Rich​是一个可以为终端提供富文本和精美格式的 Python 库,利用Rich API​可以很容易的在终端输出添加各种颜色和不同风格。Rich还可以绘制漂亮的表格,进度条,markdown,突出显示语法的源代码及回溯等等。

官网的示例:

05f2ce822a72f44bf8967104883f409f85fe1d.png

Rich是跨平台库,适用于Linux、OSX和Windows。安装也很方便。

python -m pip install rich

博主试着用了下这个库,下面是测试案例,体验拉满~。

from rich.console import Console
console = Console()

test_data = [
    {"专业": "模式识别与智能系统", "学科": "人工智能", "params": [None, 1, 2, 4, False, True], "id": "1",},
    {"专业": "模式识别与智能系统", "学科": "深度学习", "params": [7]},
    {"专业": "模式识别与智能系统", "学科": "机器视觉", "params": [42, 23], "id": "2"},
]

def test_log():
    enabled = False
    context = {
        "天气": "阴",
    }
    movies = ["误杀2", "江照黎明"]
    console.log("Hello from", console, "!")
    console.log(test_data, log_locals=True)

test_log()

在这里插入图片描述

3 Dear PyGui

Dear PyGui是一个易于使用但功能强大的非终端Python GUI框架。

官网的示例:

a46aea622b2877bfa917004d2a74d8d84aec6d.png

Dear PyGui基于及时渲染和GPU来提供高度动态的用户接口,且Dear PyGui是跨平台的,在Windows 10、macOS、Linux甚至是树莓派Raspberry Pi 4上都能使用;安装起来也相当简单:

pip install dearpygui
or
pip3 install dearpygui

4 HummingBird

HummingBird​是微软推出的一款人工智能库,可以将传统人工智能模型编译成张量计算,了解深度学习框架,如Tensorflow、Pytorch的同学一定知道张量的重要性。

HummingBird​允许用户几乎无缝地使用各种深度学习框架来加速机器学习模型,基于HummingBird有很多好处:

  • 所有当前或将来在神经网络框架中的优化都会被引入;
  • 硬件加速;
  • 提供独一无二的统一平台来支持所有传统机器学习模型和深度学习;
  • 无需重建模型

总之,HummingBird把深度学习的入门门槛又大大降低了。

HummingBird库的一行安装代码如下:

pip install hummingbird-ml

5 HiPlot

HiPlot是微软推出的用于分析人工智能高维数据的库。

HiPlot是一个轻量级交互式可视化工具,用来帮助AI研究者发现高维数据中的关联和内在模式,同时采用并行渲染和其他图形化方式来展示信息。

官网的示例:

36868573047c74c4c129836e7cbc3371b27a94.png

HiPlot库的一行安装命令如下:

pip install -U hiplot  # Or for conda users: conda install -c conda-forge hiplot

6 Norfair

Norfair是一个轻量级平面物体跟踪Python库。​

使用Norfair,你可以仅用几行代码就赋予任何检测算法目标跟踪的能力。

官网的示例:

f9c0ffa76cd6b968a25009d50692cfe66d3b1d.gif

Norfair库的一行安装命令如下:

pip install norfair

7 GeoPandas

GeoPandas是用来处理地理空间数据的工具库,不仅完美融合了pandas数据类型,还提供了操作地理空间数据的高级接口。

官网的示例:

d9008e027f5582e810f9366bd3acf8055e5548.png

这个库的安装相对复杂,需要具备以下依赖:

  • numpy
  • pandas (version 1.0 or later)
  • shapely (interface to GEOS; version 1.7 or later)
  • fiona (interface to GDAL; version 1.8 or later)
  • pyproj (interface to PROJ; version 2.6.1 or later)
  • packaging

安装好依赖项后即可运行安装命令,如下:

pip install pygeos

8 PyAutoGUI

PyAutoGUI是一个跨平台GUI自动化Python模块。用于以编程方式控制鼠标和键盘。可以让计算机完成你所设计的自动控制任务,解放你的双手

安装时会自动安装PyAutoGUI​依赖的模块,包括PyTweening,PyScreeze,PyGetWindow,PymsgBox和MouseInfo,因此只需一行命令,很方便:

pip install pyautogui

应用时也有很多封装好的API,例如

# 将鼠标光标移动到(200,300)
pyautogui.moveTo(200,300)
# 将鼠标光标移动到(400,500)
pyautogui.moveTo(400,500)

我做了个小示例:

b931ad440d4b37c8259130b79e29ba970627a9.gif

9 Plotly

Plotly是一个交互式的、开源的、基于浏览器的Python图形库,提供了30多种图表类型,包括

  • SVG地图

Plotly库的一行安装命令如下:

pip install plotly==5.6.0

需要注意的是plotly​是建立在jupyter notebook​上的,所以需要在jupyter notebook​中导入这两个包,而不能使用VSCode。

官网示例:

c68e93017635bab3772259eedd60b4a03e6d7b.png

10 Emoji

Emoji​是个很有意思的Python库,事实上Unicode​联盟支持一整套表情符号代码,Emoji库就提供了打印表情符号的Python接口,使编程更有趣。

Emoji库的一行安装命令如下:

pip install emoji --upgrade

看看Emoji库打印表情符号的效果:

>> import emoji
>> print(emoji.emojize('Python is :thumbs_up:'))
Python is 👍
>> print(emoji.emojize('Python is :thumbsup:', language='alias'))
Python is 👍
>> print(emoji.demojize('Python is 👍'))
Python is :thumbs_up:
>>> print(emoji.emojize("Python is fun :red_heart:"))
Python is fun ❤
责任编辑:华轩 来源: Python学习与数据挖掘

Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK