Python潮流周刊#6:Python 3.12 有我贡献的代码!

简介: Python潮流周刊#6:Python 3.12 有我贡献的代码!

你好,我是猫哥。这里记录每周值得分享的 Python 及通用技术内容,部分为英文,已在小标题注明。(标题取自其中一则分享,不代表全部内容都是该主题,特此声明。)

首发于我的博客,pythoncat.top/posts/2023-…

🦄文章&教程

1、CPython 贡献日记:Python 3.12 有什么?

文章出自群友@孙孟越,介绍了 Python 3.12 中他深度参与的几个大更新,比如 PEP-701 定型 f-字符串的句法、PEP-688 给 Python Buffer Protocol 暴露 Python 接口、PEP-695 类型参数语法,等等。另外,他在前一篇《CPython 贡献日记》中介绍了给开源社区做贡献的相关知识,比如提 PR 的小技巧、提/解决 Issue 的小技巧,等等。(你也想给 Python 贡献代码么?请参考:Python Developer’s Guide

2、有哪些值得关注的 AI 工具?我们整理了这 67 个

文章介绍了目前流行的 67 个工具,包括大语言模型、搜索引擎、办公、内容生成、精神需求、提示词学习等方向,它还梳理了下面这张思维导图:

image.png

3、我买了本豆瓣 9.6 分的 Python 书,发现里面每 5 页一个错误?!

文章从一本 Python 入门书籍中找出了 30 个有代表性的错误,并给出了“离谱程度”评分。作者批判性阅读了那本书,同理,读者们也应该批判性阅读这篇文章,因为它说得也并不都对。(@TheFry 投稿)

4、Sketch of a Post-ORM (英)

通常我们使用纯 SQL 或者 ORM 框架来操作数据库,作者比较了这两种方案,指出了它们的诸多缺陷,然后提出了一种新的技术设想。作者从 8 个方面介绍了自己的思路,包括迁移优先、声明式迁移、跨语言移植、更好的 SQL,等等。作者还演示了一个工作流以及 Python 代码示例。

5、Python 中运行 Shell 命令的正确做法 (英)

作者先介绍了 Python 与操作系统交互的一些常用库,比如 pathlib、tempfile、shutil、os、subprocess 等等,最后再介绍了他最为推荐的 sh 库的相关用法。这个库的方法对熟悉 shell 命令的同学非常友好。

6、如何使用 async 升级 Flask 程序 (英)

文章使用 Locust 作负载测试,简单演示了将同步的 Flask 程序修改为异步后,性能数据上的变化。

image.png

7、提议给 Python 添加一个结构语法 (英)

核心开发者 Brett Cannon 的博客介绍了他的思考,提议增加一个struct 关键字,用于更方便地创建数据类,类似于 C、Rust 与 Go 的结构语法。文中介绍了他的目标以及这个关键字的实现原理,目前在收集意见阶段,未来不排除会提成一个 PEP。

8、类属性和实例属性是怎样的关系?

出自《从 1 到 ∞ 精通 Python》系列,已包含 17 篇文章。作者参考了《Python 源码剖析》的分析方法及结论,深度探析了 Python 解释器源码,讲解 Python 重要特性的实现原理。

9、2023 年 39 个顶级 Python 框架 (英)

文章梳理介绍了 39 个用于开发及测试的 Python 框架,内容很长,介绍的范围很全面。

10、果蔬识别系统:Python+Django+TensorFlow+卷积神经网络算法

使用 Python 作为主语言,基于 TensorFlow 框架,通过对数据集进行训练,得到了一个识别精度较高的模型。基于 Django 框架,开发了网页端操作平台,支持用户上传图片作识别。

image.png

11、使用 Kivy 库进行 GUI 开发 (英)

这是一篇入门教程。Kivy 是一个用于开发图形用户界面的库,支持桌面的跨平台开发,也支持为移动设备创建多点触控的程序。

12、了解 CPU 有助于提升 Numba 和 NumPy 代码的速度 (英)

当需要加快 NumPy 速度或减少其运行内存时,通常使用即时编译器 Numba。文章针对现代 CPU 的特点来优化 代码,将一个去除图像中的噪点程序的耗时从 48 ms 降到了 2 ms。

13、当字节码咬人时:谁检查 Python 文件编译后的内容? (英)

ReversingLabs 研究团队发现了一种针对 PyPI 的新型攻击,它使用编译后的 Python 代码来规避检测——可能是第一个利用 PYC 文件直接执行的攻击。

image.png

14、GPT 是如何工作的:200 行 Python 代码实现一个极简 GPT

这是一篇译文,原文作者是 OpenAI 的创始成员 Andrej Karpathy。文章使用 PyTorch 实现了一个极简 GPT,让读者对其内部工作机制有个直观理解。

15、600 行 Python 代码实现两个 Transformer(文本分类+文本生成)

这也是一篇译文,原文作者是阿姆斯特丹自由大学的助理教授。原文最早写于 2019 年,那时大语言模型还没有如今火爆。在文章末尾,作者希望 transformer 扩展到其它领域,因为它有很强的通用性。

🐿️项目&资源

1、neodb:标记你喜欢的东西

NeoDB 是一个用 Django 写的开源项目,也是一个联邦宇宙书影音游戏标注平台,可简单理解成 Web3 的开源的无审查的豆瓣,但支持标记的内容比豆瓣多得多。(这个库是在@laike9m 的博客看到的。以及非常感谢他在 Twitter 上推荐了本周刊!!)

image.png

2、JupyterLab 4.0 已发布 (英)

JupyterLab 4.0 主要的新功能有:性能更快、升级的文本编辑器、新的扩展管理器、UI 改进,等等。

3、pystack (英)

pstack 是 Linux 系统上常用的命令行工具,用于显示一个进程的函数调用栈,可诊断进程卡死、死锁等问题,以及分析进程的性能瓶颈。pystack 是用 Python 写成的类 pstack 库。值得一提的是,它竟然还可以显示线程是否持有、是否在等待或正在释放 GIL。

4、GPYTHON:你的专属 Python 学习助手

这是一个基于 ChatGPT 的 Python 在线学习平台,内置了 AI 助手以及在线代码运行模块,允许你随时修改示例代码,一键运行,一键查错。(@Stanaaa 投稿)

image.png

5、M3E 模型

M3E 是一个中文开源的 Embedding 模型,使用千万级 (2200w+) 的中文句对数据集进行训练,在文本分类和文本检索的任务上都超越了 openai-ada-002 模型。(@王宇昕投稿)

6、reactpy:Python 的 React (英)

ReactPy 是一个库,用于在 Python 中构建用户界面,且不使用 Javascript。它的接口类似于 ReactJS 中的组件,可供没有 Web 开发经验的人使用。

7、domain-admin: 域名 SSL 证书监测平台

基于 Python + Vue3.js 技术栈实现的域名和 SSL 证书监测平台,核心功能:到期自动邮件提醒。

image.png

8、EasySpider:一个可视化爬虫软件

一个可视化爬虫软件,只需在网页上选择想爬的内容,并根据提示框操作即可完成爬虫设计和执行。也支持以命令行方式执行,可以方便地嵌入到其他系统中。这个项目源于原作者的浙江大学硕士论文,已获得国家发明专利,相关资料可在仓库查看。

9、text-to-video-synthesis-colab:文本生成视频的模型 (英)

一个开源的文本生成视频模型,整体模型参数约 17 亿,使用英文输入。放出来的演示视频非常惊艳。

10、segment-geospatial:使用 SAM 分割地理空间数据 (英)

SAM 即“分割任意物体模型”(Segment Anything Model),是计算机视觉领域中非常有用和先进的模型,用于需要精确识别和分割任意物体的应用场景。这个项目使用它来分割地理空间数据。

11、traceback_with_variables:Python 回溯(错误消息)打印变量 (英)

该项目可以在 Python 的回溯信息中添加变量。通过记录日志或打印彩色的变量上下文信息,方便调试异常的原因,并显示堆栈跟踪中每个帧的变量值。

image.png

🐢播客&视频

1、当你用Python3.12的时候,或许就跑了我写的代码呢!

视频来自 B 站@码农高天,他从 3 月份起,有 20 几个 pr 已合入 Python 3.12。这期视频详细介绍了他做出的几个贡献,主要有完善 pdb 文档、修复了几个 bug、引入 convenience variable 特性,等等。(作者在第一次 pr 被合入后,录了一期《我给Python修了个bug!从今天起,也算是Python开发者了?》)

2、PyCon US 2023 - YouTube (英)

今年 PyCon US 活动的视频已经可以看了,共用 142 个视频!PyCon 是全球性的最大的 Python 开发者会议之一,由 PSF 主办,通常在 PyCon 活动期间会举行“Python 语言峰会”,今年的峰会议题详见《Python潮流周刊#4:Python 2023 语言峰会》。

image.png

3、PyCascades - 2023 视频 (英)

2023 年 PyCascades 活动上的视频在上个月发布了,有 20 几个视频。PyCascades 是一个专注于 Python 编程语言的会议,通常在北美地区举行,每年一次。它类似于 PyCon,但是由独立的组织者和志愿者自发组织,规模更小。

🐱赞助&支持

内容创作要花费大量的时间和精力,如果你觉得有帮助,请随意赞赏买杯咖啡或在爱发电进行支持!如果你喜欢本周刊,请转发分享给其他需要的同学,让更多人可以从中受益~

诚邀赞助者,帮助本周刊免费且可持续发布,欢迎通过私信联系。

🐼关于周刊

Python 潮流周刊,由豌豆花下猫主理,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。

订阅方式:Python猫 (可加群)| RSS | 邮件 | Github | Telegram | Twitter

目录
相关文章
|
18天前
|
开发框架 数据建模 中间件
Python中的装饰器:简化代码,增强功能
在Python的世界里,装饰器是那些静悄悄的幕后英雄。它们不张扬,却能默默地为函数或类增添强大的功能。本文将带你了解装饰器的魅力所在,从基础概念到实际应用,我们一步步揭开装饰器的神秘面纱。准备好了吗?让我们开始这段简洁而富有启发性的旅程吧!
26 6
|
11天前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
52 8
|
18天前
|
API Python
【Azure Developer】分享一段Python代码调用Graph API创建用户的示例
分享一段Python代码调用Graph API创建用户的示例
41 11
|
20天前
|
测试技术 Python
探索Python中的装饰器:简化代码,增强功能
在Python的世界中,装饰器是那些能够为我们的代码增添魔力的小精灵。它们不仅让代码看起来更加优雅,还能在不改变原有函数定义的情况下,增加额外的功能。本文将通过生动的例子和易于理解的语言,带你领略装饰器的奥秘,从基础概念到实际应用,一起开启Python装饰器的奇妙旅程。
34 11
|
16天前
|
Python
探索Python中的装饰器:简化代码,增强功能
在Python的世界里,装饰器就像是给函数穿上了一件神奇的外套,让它们拥有了超能力。本文将通过浅显易懂的语言和生动的比喻,带你了解装饰器的基本概念、使用方法以及它们如何让你的代码变得更加简洁高效。让我们一起揭开装饰器的神秘面纱,看看它是如何在不改变函数核心逻辑的情况下,为函数增添新功能的吧!
|
16天前
|
程序员 测试技术 数据安全/隐私保护
深入理解Python装饰器:提升代码重用与可读性
本文旨在为中高级Python开发者提供一份关于装饰器的深度解析。通过探讨装饰器的基本原理、类型以及在实际项目中的应用案例,帮助读者更好地理解并运用这一强大的语言特性。不同于常规摘要,本文将以一个实际的软件开发场景引入,逐步揭示装饰器如何优化代码结构,提高开发效率和代码质量。
42 6
|
21天前
|
Python
Python编程入门:从零开始的代码旅程
本文是一篇针对Python编程初学者的入门指南,将介绍Python的基本语法、数据类型、控制结构以及函数等概念。文章旨在帮助读者快速掌握Python编程的基础知识,并能够编写简单的Python程序。通过本文的学习,读者将能够理解Python代码的基本结构和逻辑,为进一步深入学习打下坚实的基础。
|
17天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
16天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
4天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
98 80
下一篇
DataWorks