在编程的世界中,Python一直以其简洁、易读的语法而备受推崇。然而,除了Python本身的强大功能之外,还有许多令人瞠目结舌的Python库,它们为开发者们带来了无尽的惊喜和创造力。在本文中,笔者为大家分享7个这样的Python库,建议收藏。
rembg是一个强大的Python库,用于图像背景的自动去除。它基于深度学习和人工智能技术,能够高度准确地将图像中的背景抠出,留下前景图像。
安装rembg:
#Installationpip install rembg
示例:
# Importing librariesfrom rembg import removeimport cv2 # path of input image (my file: image.jpeg)input_path = 'demo.jpg'# path for saving output image and saving as a output.jpegoutput_path = 'output.jpg'# Reading the input imageinput = cv2.imread(input_path)# Removing backgroundoutput = remove(input)# Saving file cv2.imwrite(output_path, output)
Ipyvolume是一个基于Jupyter Notebook的Python库,用于创建交互式的3D可视化和动画。它提供了丰富的功能和工具,使得在Notebook中可视化数据变得更加简单和直观。
示例代码:
from colormaps import parulaX = np.arange(-5, 5, 0.25*1)Y = np.arange(-5, 5, 0.25*1)X, Y = np.meshgrid(X, Y)R = np.sqrt(X**2 + Y**2)Z = np.sin(R)colormap = parulaznorm = Z - Z.min()znorm /= znorm.ptp()znorm.min(), znorm.max()color = colormap(znorm)ipv.figure()mesh = ipv.plot_surface(X, Z, Y, color=color[...,:3])ipv.show()
Pandas-Bokeh是一个使用Bokeh为Pandas数据帧提供交互式绘图的库,它对于创建交互式可视化数据非常有用。
安装pandas-bokeh:
pip install pandas-bokeh
交互式可视化效果:
示例代码:
import pandas as pdimport pandas_bokehdata = { 'fruits': ['Apples', 'Pears', 'Nectarines', 'Plums', 'Grapes', 'Strawberries'], '2015': [2, 1, 4, 3, 2, 4], '2016': [5, 3, 3, 2, 4, 6], '2017': [3, 2, 4, 4, 5, 3]}df = pd.DataFrame(data).set_index("fruits")p_bar = df.plot_bokeh.bar( ylabel="Price per Unit [€]", title="Fruit prices per Year", alpha=0.6)
Humanize是一个Python库,旨在将复杂的数据类型和单位转换为更易读的形式,以增加人类可理解性。它提供了一些有用的函数,用于将数字、时间、文件大小等转换为更友好和可读性强的格式。
使用Humanize库,你可以将整数转换为带有逗号的易读形式,例如将1000转换为"1,000";将时间间隔转换为更具描述性的形式,例如将60秒转换为"1分钟";将字节数转换为更易理解的文件大小表示,例如将1024转换为"1KB"。
安装Humanize:
pip install Humanize
示例(integers):
# Importing libraryimport humanizeimport datetime as dt# Formatting numbers with commaa = humanize.intcomma(951009)# converting numbers into wordsb = humanize.intword(10046328394)#printingprint(a)print(b)
输出:
951,009 10.0 billion
示例(Date&Time):
import humanizeimport datetime as dta = humanize.naturaldate(dt.date(2023, 9,7))b = humanize.naturalday(dt.date(2023, 9,7))print(a)print(b)
输出:
todaytoday
Pendulum扩展了内置的Python DateTime模块,添加了一个更直观的API,用于处理时区,对日期和时间进行操作,如添加时间间隔、删去日期以及在时区之间进行转换。它为格式化日期和时间提供了一个简单、人性化的API。
安装Pendulum:
pip install pendulum
示例:
# import libraryimport pendulumdt = pendulum.datetime(2023, 8, 31)print(dt) #local() creates datetime instance with local timezonelocal = pendulum.local(2023, 8, 31)print("Local Time:", local)print("Local Time Zone:", local.timezone.name)# Printing UTC timeutc = pendulum.now('UTC')print("Current UTC time:", utc) # Converting UTC timezone into Europe/Paris timeeurope = utc.in_timezone('Europe/Paris')print("Current time in Paris:", europe)
输出:
2023-08-31T00:00:00+00:00 Local Time: 2023-08-31T00:00:00+08:00 Local Time Zone: Asia/Shanghai Current UTC time: 2023-09-07T04:06:05.436553+00:00 Current time in Paris: 2023-09-07T06:06:05.436553+02:00
Sketchpy是一个用于对图像进行动画绘制的Python模块。sketchpy模块是在Python中的turtle模块之上创建的。
安装Sketchpy:
pip install sketchpy
示例-使用 Python 绘制 Vijay:
from sketchpy import librarymyObject = library.vijay()myObject.draw()
FTFY是一个Python库,它的全称是"Fixes Text For You",用于修复和纠正文本中的常见编码问题和Unicode字符问题。它可以自动检测和修复各种编码问题,使得文本在处理和显示时更加准确和一致。
安装FTFY:
pip install ftfy
示例:
print(ftfy.fix_text('Correct the sentence using “ftfyâ€/x9d.'))print(ftfy.fix_text('✔ No problems with text'))print(ftfy.fix_text('à perturber la réflexion'))
输出:
本文链接:http://www.28at.com/showinfo-26-34621-0.html七个令人瞠目结舌的Python库
声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com
上一篇: Go 语言中 sync 包的近距离观察
下一篇: C 语言的入口真的是 main 函数吗?