Python猫

Python 潮流周刊#51:用 Python 绘制美观的图表

这里分享的是 Python 潮流周刊第 51 期,原文发布于 2024-05-18。我们的付费专栏内容在发布一年后会免费开源,不少内容依然值得回看,愿大家读有所获。点击文末“阅读原文”,体验更佳。

温馨提示:在微信关注 Python猫,发送“优惠券”,即可领取 9 折优惠券,订阅专栏可享 15 元优惠。

本期分享了 12 篇文章,12 个开源项目。

🦄文章&教程[1]

1、引人注目的 Python Streamlit:精美的交互式地图和图表[2]

这篇教程使用 streamlit + pandas + plotly 开发一个可交互的数据可视化项目,介绍了数据集的获取以及详细的开发步骤。

Image

2、我絕不用 result 作為變數名稱[3]

一篇短小精悍的文章,讲清楚了为什么不应该用 result 作为变量名。虽然是一个很小的编程规范点,但真的很常见,我自己初入职场的几年也是反面例子。

3、Python 中使用 Loguru 记录日志[4]

Python 中有多种日志库,Loguru 是目前最流行的三方日志库,使用简便。这篇教程从它的安装开始,逐步介绍它的相关功能,适合作为入门学习。(附:对比最流行的 6 个 Python 日志记录库[5])

4、35 道 Django 技术面试题[6]

企业级 Python Web 项目开发使用 Django 框架的不少,文章分享了 35 道从初级到高级的 Django 面试题以及简短的答案。

5、Python 的集合是没有值的字典[7]

集合的元素是可哈希的不重复的内容,这点跟字典的键很像。文章通过用没有值的字典来模拟实现集合数据结构,实现它的各种方法。预警,一点也不实用。。

6、使用 Sliver 渗透测试套件的针对 Mac 的 PyPi 包后门[8]

PyPI 上的恶意软件包手段真高超,文章提到的库将 Sliver 二进制文件隐藏在 PNG 图片中,在操作系统安装这个包时会解码图片并执行后门代码。

7、为什么 TensorFlow 正在缓慢消亡?[9]

TensorFlow 和 PyTorch 是两个主流的深度学习框架,分别出自谷歌和脸书,前者的流行趋势正在被后者赶超,文章分析了出现这种现象的几个原因。

8、Python 中的延迟计算是什么?[10]

延迟计算(lazy evaluation)就是在需要使用时再计算求值,即按需调用。Python 中有哪些延迟计算的例子、这种实现有什么好处、又有什么缺点?

9、为什么要看 Python 源码?它的结构长什么样子?

这是“Python 3.12 源码剖析”系列的开篇,介绍了 CPython 源码的项目结构、Python 解释器的基本组成。专栏预计更新 100 多篇,目前免费已更新 5 篇。

10、2014 年我的 10 个业余项目[11]

一篇写于 2015 年的文章,作者分享了自己开发的 10 个项目,主要为 Python 和 C 语言的。第一个项目是用 C+Python 写的 Minecraft 克隆项目,Github 10K star,其它项目也都挺有意思。

Image

11、无需数学公式,解释 LLM 的工作原理[12]

大语言模型已经成为很多人必不可少的效率工具,它的智能来自哪里?文章试图用简单的术语和少量 Python 代码,不用高深的数学知识,来解释 LLM 的工作原理。

12、替代实现的问题[13]

作者发现了一个常见的问题:Python 和 Ruby 等语言都有 JIT 实现,但这些编程语言中的替代实现都有一个问题,就是要艰难地跟进官方实现的新功能,要兼容新的语言规范,因此受到诸多的限制。

🐿️项目&资源[14]

1、The-Python-Graph-Gallery:数百个用 Python 绘制的图表[15]

这个项目是一个网站的源码,网站很有意思,收录了大量的图表、制图工具、示例代码和文章教程。(star 1.8K)

2、parler-tts:高质量的 TTS 模型[16]

一个轻量级文本转语音 (TTS) 模型,可根据给定说话者的风格(性别、音调、说话风格等)生成高质量的听起来很自然的语音。完全开源,包括数据集、预处理代码、训练代码和权重值等。(star 2.6K)

3、UXsim:道路上的车辆交通流模拟器[17]

一个开源的车辆流量模拟器,绘制车辆运动轨迹,模拟交通拥堵情况。使用matplotlib 作可视化,提供了交互式 GUI。

4、Quads:基于四叉树的计算机艺术[18]

输入一个目标图片,它会将图像切成象限,并在每个象限填充原图的平均颜色,最后呈现的效果还挺酷的。(star 1.2K)

Image

5、bilibot:用哔哩哔哩用户评论微调的本地聊天机器人[19]

基于 B 站评论微调的聊天机器人,支持文字聊天,也可通过 questions.txt 生成针对给定问题的语音对话。基础模型为 Qwen1.5-32B-Chat。(star 2.3K)

6、pyaction:带有 Python、git 和 Github CLI 的 Docker 容器[20]

这个 Docker 镜像旨在支持使用 Python 实现 Github Actions。

7、firecrawl:将整个网站变成 LLM-ready 的 markdown[21]

抓取任何网站内容,将其转换为可用于 LLM 的干净的 markdown 文件。无需站点地图,会抓取所有可访问的子页面,并为每个页面生成 markdown。(star 3.1K)

8、plotille:使用盲文点在终端中绘图[22]

使用盲文点、前景色和背景色在终端中绘图、散点图、直方图和热图,无外部依赖。

Image

9、petl:Python 提取、转换和加载数据表[23]

一个数据处理工具,可将 JSON、CSV、Xlsx、XML、HTML 等文件转换,写入到 MySQL、Postgres、S3 等存储中。(star 1.2K)

10、FunClip:视频语音识别和剪辑工具,集成 AI 剪辑功能[24]

阿里达摩院开源的使用 LLM 作视频剪辑的工具,可基于语音识别结果,自由选择文本片段和演讲者进行剪辑。(star 1.7K)

11、map-machine:OpenStreetMap 的 Python 渲染器[25]

OpenStreetMap 是一个世界性的免费地图项目,map-machine 可将地图丰富的要素通过自定义图标展示出来。

12、IC-Light:给图片加上打光照明[26]

提供了两种类型的模型:文本生成照明模型和以背景图片生成照明模型。可以给普通图片加上符合场景和光源方向的光影特效。(star 3.1K)

参考资料
[1] 

🦄文章&教程: https://xiaobot.net/p/python_weekly

[2] 

引人注目的 Python Streamlit:精美的交互式地图和图表: https://johnloewen.substack.com/p/high-impact-python-streamlit-beautiful

[3] 

我絕不用 result 作為變數名稱: https://blog.kyomind.tw/no-result/

[4] 

Python 中使用 Loguru 记录日志: https://www.blog.pythonlibrary.org/2024/05/15/an-intro-to-logging-with-python-and-loguru/

[5] 

对比最流行的 6 个 Python 日志记录库: https://betterstack.com/community/guides/logging/best-python-logging-libraries/

[6] 

35 道 Django 技术面试题: https://learndjango.com/tutorials/django-technical-interview-questions

[7] 

Python 的集合是没有值的字典: https://mathspp.com/blog/sets-as-dictionaries-with-no-values

[8] 

使用 Sliver 渗透测试套件的针对 Mac 的 PyPi 包后门: https://www.bleepingcomputer.com/news/security/pypi-package-backdoors-macs-using-the-sliver-pen-testing-suite/

[9] 

为什么 TensorFlow 正在缓慢消亡?: https://thenextweb.com/news/why-tensorflow-for-python-is-dying-a-slow-death

[10] 

Python 中的延迟计算是什么?: https://realpython.com/python-lazy-evaluation/

[11] 

2014 年我的 10 个业余项目: https://medium.com/@fogleman/my-top-10-side-projects-from-2014-713a78d6fc9d

[12] 

无需数学公式,解释 LLM 的工作原理: https://blog.miguelgrinberg.com/post/how-llms-work-explained-without-math

[13] 

替代实现的问题: https://pointersgonewild.com/2024/04/20/the-alternative-implementation-problem/

[14] 

🐿️项目&资源: https://xiaobot.net/p/python_weekly

[15] 

The-Python-Graph-Gallery:数百个用 Python 绘制的图表: https://github.com/holtzy/The-Python-Graph-Gallery

[16] 

parler-tts:高质量的 TTS 模型: https://github.com/huggingface/parler-tts

[17] 

UXsim:道路上的车辆交通流模拟器: https://github.com/toruseo/UXsim

[18] 

Quads:基于四叉树的计算机艺术: https://github.com/fogleman/Quads

[19] 

bilibot:用哔哩哔哩用户评论微调的本地聊天机器人: https://github.com/linyiLYi/bilibot

[20] 

pyaction:带有 Python、git 和 Github CLI 的 Docker 容器: https://github.com/cicirello/pyaction

[21] 

firecrawl:将整个网站变成 LLM-ready 的 markdown: https://github.com/mendableai/firecrawl

[22] 

plotille:使用盲文点在终端中绘图: https://github.com/tammoippen/plotille

[23] 

petl:Python 提取、转换和加载数据表: https://github.com/petl-developers/petl

[24] 

FunClip:视频语音识别和剪辑工具,集成 AI 剪辑功能: https://github.com/alibaba-damo-academy/FunClip

[25] 

map-machine:OpenStreetMap 的 Python 渲染器: https://github.com/enzet/map-machine

[26] 

IC-Light:给图片加上打光照明: https://github.com/lllyasviel/IC-Light

Image
Image