自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

六個好用的Python庫,絕對是瑰寶!

開發(fā) 前端
在本文中,筆者將介紹六個被譽為瑰寶的Python庫,它們無疑會讓你的編程之旅變得更加輕松!

在當今的技術浪潮中,Python已經成為了一種廣泛應用的編程語言。而要想充分發(fā)揮Python的威力,離不開各種優(yōu)秀的庫的支持。這些庫能夠提供豐富的功能和強大的工具,幫助開發(fā)者們更高效地完成各種任務。在本文中,筆者將介紹6個被譽為瑰寶的Python庫,它們無疑會讓你的編程之旅變得更加輕松!

PyGWalker

https://github.com/Kanaries/pygwalker

PyGWalker是個在Jupyter Notebook環(huán)境中運行的可視化探索式分析工具,僅一條命令即可生成一個可交互的圖形界面,以類似Tableau/PowerBI的方式,通過拖拽字段進行Pandas數據分析。

Science plots

SciencePlots是一款用于科學繪圖的Python工具包。

當我們看學術期刊、論文時會看到各種各樣高大上的圖形。會好奇,這么好看的圖到底怎么畫的?是不是很困難?

的確,現在很多Python繪圖工具只是關注圖形所表達的數據信息,而忽略了樣式。

SciencePlots則彌補了這片空白,它是一款專門針對各種學術論文的科學繪圖工具,例如,science、ieee等。

如下圖所示是SciencePlots繪制的ieee期刊多類別散點圖效果。

pydbgen

pydbgen是一個輕量的純 Python 庫,它可以用于生成隨機但有意義的數據記錄(包括姓名、地址、信用卡號、日期、時間、公司名稱、職位、車牌號等等),存放在 Pandas Dataframe 對象中,并保存到 SQLite 數據庫或 Excel 文件。

如下示例是利用pydbgen生成隨機的Pandas Dataframe,并生成數據庫表。

import pydbgen
from pydbgen import pydbgen
myDB=pydbgen.pydb()

testdf=myDB.gen_dataframe(5,['name','city','phone','date'])

HandCalcs

HandCalcs是一個非常實用的Python模塊,可以幫助開發(fā)者輕松地從Python代碼中生成LaTeX報告。使用HandCalcs,你只需編寫最少的代碼,就能自動生成符合LaTeX格式的數學方程。

對于經常使用LaTeX進行科技文檔編寫的開發(fā)者來說,HandCalcs是一個必備的工具。它可以大大減少手動編寫、調整和更新數學方程的工作量,提高文檔編寫的效率和準確性。

如下示例是使用HandCalcs生成LaTeX格式數學方程的效果。

from math import sqrt,asin,sin
import handcalcs.render

%%render
#symbolic
a = 1
b = 4
c = 3
x = (-b+sqrt(b**2-4*a*c))/(2*a)

AnimatPlot

AnimatPlot是一個開源的python庫,它構建在Matplotlib之上,用于創(chuàng)建高度交互式的動畫繪圖。

示例如下:

# 導入所需的庫
import numpy as np
import matplotlib.pyplot as plt
import animatplot as amp

# 創(chuàng)建了一些坐標軸上的點
x = np.linspace(-2, 2, 41)
y = np.linspace(-2, 2, 41)
t = np.linspace(0, 2*np.pi, 30)
X, Y, T = np.meshgrid(x, y, t)

# 使用生成的坐標點,計算
data = np.sin(X*X+Y*Y-T)
line_data = data[20,:,:]

# 創(chuàng)建包含兩個子圖的圖形窗口,并設置各種圖形的屬性,如坐標軸便簽、標題等
fig, (ax1, ax2) = plt.subplots(1, 2)
for ax in [ax1, ax2]:
    ax.set_aspect('equal')
    ax.set_xlabel('x')
ax2.set_ylabel('y', labelpad=-5)
ax1.set_ylabel('z')
ax1.set_ylim([-1.1,1.1])
fig.suptitle('Multiple blocks')
ax1.set_title('Cross Section: $y=0$')
ax2.set_title(r'$z=\sin(x^2+y^2-t)$')

# 創(chuàng)建兩個block對象
# Line塊用于繪制一條線,Pcolormesh塊用于繪制一個偽彩色網格
line_block = amp.blocks.Line(X[0,:,:], line_data,
                                   ax=ax1, t_axis=1)
block = amp.blocks.Pcolormesh(X[:,:,0], Y[:,:,0], data, ax=ax2, t_axis=2, vmin=-1, vmax=1)

# 添加顏色條,用于顯示偽彩色網格的顏色映射。
plt.colorbar(block.quad)
# 創(chuàng)建時間軸對象,再使用Animation類將塊和時間軸對象組合成一個動畫
timeline = amp.Timeline(t, fps=10)
anim = amp.Animation([block, line_block], timeline)

# 添加用戶界面控制動畫的小部件
anim.controls()
# 顯示動畫窗口
plt.show()

KnockKnock

KnockKnock是一個便捷的Python庫,它會在機器學習模型訓練結束或崩潰時發(fā)出通知。用戶可以通過電子郵件、Slack、Microsoft Teams等方式接收通知。

它提供了簡單的接口,通過幾行代碼即可設置不同的通知方式,使你能夠及時了解訓練進度和狀態(tài)。以下是一個簡單的示例:

from knockknock import email_sender

# 設置郵件發(fā)送的配置信息
email_config = {
    "email_address": "your_email@example.com",
    "password": "your_email_password",
    "smtp_server": "smtp.example.com",
    "smtp_port": 587,
    "receiver_email": "receiver_email@example.com"
}

@email_sender(**email_config)
def train_model():
    # 訓練模型的代碼
    # ...

# 調用訓練函數
train_model()

在這個示例中,通過裝飾train_model函數,使用提供的郵件配置信息設置了郵件發(fā)送功能。當訓練完成或崩潰時,將通過電子郵件發(fā)送通知。

責任編輯:趙寧寧 來源: 數據科學與AI
相關推薦

2020-04-22 14:27:44

前端工具開發(fā)

2022-02-24 10:48:01

Pycharm插件

2021-09-10 08:00:00

Python機器學習開發(fā)

2023-03-22 11:09:09

數字化轉型ITCIO

2020-06-05 15:25:05

工具代碼瀏覽器

2023-12-05 13:09:00

Python

2024-10-11 10:00:00

Python編程

2022-09-08 09:01:41

CodePenJavaScripCSS

2017-05-03 10:45:47

Python運行效率竅門

2021-10-27 10:15:25

Python新特性編程語言

2022-03-26 09:32:54

Python編程映射

2022-01-11 15:44:15

JavaScript圖表庫數據

2023-04-20 09:08:55

IT重組CIO

2022-12-01 16:59:32

代碼編輯器開發(fā)前端

2024-05-10 09:28:57

Python面向對象代碼

2022-11-15 16:54:54

2022-04-18 07:51:31

Web框架模板

2023-04-26 00:46:03

Python自然語言處理庫

2022-05-13 09:55:19

Python內置函數

2023-05-16 16:03:10

點贊
收藏

51CTO技術棧公眾號