Python 是一门简单并且具有非常多库的一门语言。无论你有什么样的需求,它总有一款功能满足你的需求。虽然学习 Python 很多年,却总可以发现一些低调却非常有用、有趣的库。
今天我就给大家分享一些相见恨晚的功能库,如果你有比较好玩、有用的不妨分享一下。
原文链接
太香!又发现了5个让你相见恨晚的Python 库!mp.weixin.qq.com1、myqr
myqr 是一款制作炫酷二维码的工具库,短短几行代码就可以让你看起来很牛的样子。
安装
pip install myqr
代码
from MyQR import myqr
import os
version, level, qr_name = myqr.run(
words="https://www.baidu.com", # 可以是字符串,也可以是网址(前面要加http(s)://)
version=1, # 设置容错率为最高
level='H', # 控制纠错水平,范围是L、M、Q、H,从左到右依次升高
picture="1.gif", # 将二维码和图片合成
colorized=True, # 彩色二维码
contrast=1.0, #用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
brightness=1.0, #用来调节图片的亮度,其余用法和取值同上
save_name="2.gif", # 保存文件的名字,格式可以是jpg,png,bmp,gif
save_dir=os.getcwd() #控制位置
)
来看看效果
2、Tqdm
Tqdm 显示循环的进度条的库。它可以在长循环中添加一个进度提示信息,方便实时查看运行进度,用户只需要封装任意的迭代器,是一个快速、扩展性强的进度条工具库。
安装
pip install tqdm
示例
from tqdm import tqdm
import time
for i in tqdm(range(100)):
time.sleep(0.1)
3、Pendulum
对于那些在 Python 中处理日期时间时会感到沮丧的人来说,Pendulum 绝对是福利。它是一个简化日期时间操作的 Python 包,这是目前见过最低调但非常强大时间处理库。
官方文档:https://pypi.org/project/pendulum/
安装
pip install pendulum
示例
import pendulum
# 1、获取时间
print(pendulum.now())
print(pendulum.today())
print(pendulum.tomorrow())
print(pendulum.yesterday())
# 2、转字符串
print(pendulum.now().to_datetime_string())
# 2019-12-12 15:51:22
print(pendulum.now().to_date_string())
# 2019-12-12
print(pendulum.now().to_time_string())
# 22:25:05
print(pendulum.now().format('%Y-%m-%d'))
# 3、类型测试
from datetime import datetime
dt =pendulum.datetime(2015, 2, 5)
print(isinstance(dt, datetime))
True
# 4、解析规范的时间
print(pendulum.from_format('2019-12-12', '%Y-%m-%d'))
# 2019-12-12T00:00:00+00:00
print(pendulum.parse('2019-12-12'))
# 2019-12-12T00:00:00+00:00
# 6、属性
now = pendulum.now()
print(now.year)
print(now.month)
print(now.day)
print(now.hour)
print(now.minute)
print(now.second)
# 7、时间加减
now = pendulum.now()
print(now)
print(now.add(years=1))
print(now.subtract(years=1))
# 时间跨度计算
print(now.diff(now.add(years=1)).in_years())
# 8、设置语言地区
pendulum.set_locale('zh')
print(pendulum.now().subtract(days=1).diff_for_humans())
# 1天前
print(pendulum.now().subtract(hours=1).diff_for_humans())
# 1小时前
# 9、生成时间序列
period = pendulum.period(pendulum.now(), pendulum.now().add(days=3))
# years, months, weeks, days, hours, minutes and seconds
for dt in period.range('days'):
print(dt)
4、Fuzzywuzzy
这个库的名字听起来很奇怪,但是在字符串匹配方面,fuzzywuzzy 是一个非常有用的库。可以很方便地实现计算字符串匹配度、令牌匹配度等操作,也可以很方便地匹配保存在不同数据库中的记录。
安装
pip install fuzzywuzzy
示例
from fuzzywuzzy import fuzz
from fuzzywuzzy import process
# 简单匹配度
fuzz.ratio("this is a test", "this is a test!")
# 模糊匹配度
fuzz.partial_ratio("this is a test", "this is a test!")
5、Bokeh
Bokeh 是服务于浏览器的炫酷的交互式可视化库。它提供通用图形的优雅,简洁的构造,并在大型或流数据集上提供高性能的交互性。Bokeh 可以帮助任何想要快速轻松地进行交互式绘图,仪表板和数据应用程序的人。
from bokeh.plotting import figure, output_file, show
# 创建图表
p = figure(plot_width=300, plot_height=300, tools="pan,reset,save")
# 图表中添加圆
p.circle([1, 2.5, 3, 2], [2, 3, 1, 1.5], radius=0.3,alpha=0.5)
# 定义输出形式
output_file("foo.html")
# 展示图表
show(p)
整理不易,有所收获,点个赞和爱心❤️,更多精彩欢迎关注
推荐阅读
为了更好学习Python、数据分析、数据挖掘等知识,我将文章进行了梳理,整理不易,给个赞,谢谢!
Python与数据挖掘:持续更新中|最全数据分析资料汇总(趣味Python、商业数据分析、爬虫、高效工具等等)zhuanlan.zhihu.com