Python 潮流周刊#43:在开源与家庭之间,他选择了家庭

news2024/9/25 23:14:54

△△请给“Python猫”加星标 ,以免错过文章推送

b3c2d4d664831d9521dfcd627208a50c.png

你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。本周刊开源,欢迎投稿[1]。另有电报频道[2]作为副刊,补充发布更加丰富的资讯,欢迎关注。

特别提醒: 本期周刊赠书 5 本《Python数据结构与算法分析(第3版)》,详情见文末。

本文博客版链接(更好的阅读体验):https://pythoncat.top/posts/2024-03-23-weekly

🦄文章&教程

1、我的开源优先级转变了[3]

作者开源了PyOxidizerpython-build-standalone 等多个 Python 项目,但因为编程语言兴趣已转向 Rust,以及身份成为了丈夫&父亲,时间精力不足,因此选择回归家庭,要给这些开源项目寻求新的维护者了。

2、如何远程唤醒家里的电脑?[4]

家里的电脑处于休眠模式,如何从其它地方远程唤醒它?作者用树莓派单板计算机 + Python 开发的简单网页 + systemd 服务,通过给电脑的网络控制器发送数据包,实现了机器的远程唤醒。

3、Python 程序的内存占用情况[5]

相比静态类型语言,Python 要消耗大量内存。文章探讨了 Python 的内存模型:对象是如何分配的、对象存储在什么地方、最终如何清理对象?介绍了如何使用简单的技巧,显著改善内存的使用。

4、正则表达式字符“$”并不意味着“字符串末尾”[6]

正则表达式中“$”符号会匹配到什么内容呢?Python re.MULTILINE 多行模式对字符串匹配的影响?是否不同的编程语言的表现都一样呢?什么时候应该用“\z”和“\Z”?

67e5d5c1eb3dd56c0cc0986802f2c18a.png
不同编程语言匹配字符串末尾的情况

5、介绍 Python 中所有的双下方法[7]

双下方法即以双下划线开头和结尾的特殊方法,例如__init__() ,Python 语言中共有 150 多个特殊的双下方法,文章对它们多了分类介绍,并梳理了明细清单。

6、Python 多语言支持实现国际化与本地化的最佳实践[8]

Python 有丰富的库可支持国际化和本地化,文章介绍如何用gettext 库实现语言国际化以及如何管理本地化资源。

7、在 Windows 上利用 Qwen 大模型搭建一个 ChatGPT 式的问答小助手[9]

Qwen 是阿里推出的大语言模型,作者用 Win10 系统搭建了一个基于 Qwen 的 AI 问答助手。内容包括安装环境、下载模型、使用transformers 实现模型对话功能。

8、(如何(用Python)开发一个(Lisp)解释器)[10]

“如果你不知道编译器是如何工作的,那你就不知道计算机是如何工作的。“作者通过用 Python 开发一个 Lisp 解释器,详细介绍了 Scheme 的语法,深入探讨解释器/计算机的工作原理。

9、使用 Python 解析 URL[11]

正确地解析 URL 要比想象得难,它自 1994 年提出以来已发生巨大变化。Python 标准库urllib 并不遵循任何 URL 规范,文章介绍了两个符合 WHATWG 规范的解析库ada-pythoncan_ada ,后者比前者快 2 倍,前者比urllib.parse 快 2 倍。

10、Python 鸭子类型:编写灵活且解耦的代码[12]

鸭子类型的核心思想是“如果它走起来像鸭子,叫起来像鸭子,那么它就是鸭子”。由对象的行为决定类型,而非是一成不变。这篇长文对鸭子类型作了非常详细的介绍,它是什么、如何使用、有什么优缺点、使用哪些方案来弥补鸭子类型的缺点,等等。

11、用 Python 实现最小可用的 PostgreSQL[13]

介绍了 PostgreSQL 服务端与客户端通信的流程,使用 Python 实现一个最小化的服务端。

12、给框架开发者的建议[14]

作者在去年开发了两个 Python 框架,文章分享了他在开发框架时学到的东西。部分建议有:定义你的反目标、了解已存在的东西、首先考虑你的界面、在没准备好时就使用、1 个样本是不够的、重视文档,等等。

🎁Python潮流周刊🎁每 30 期为一季,第一季的精华内容已整理成一篇,方便你随时查看。在线访问地址:Python 潮流周刊第一季精华合集(1~30)[15]

🐿️项目&资源

1、grok-1:马斯克开源的 Grok[16]

本周最最火爆的项目当属马斯克差点跳票的 Grok 大语言模型了,有非常惊人的 314B 参数,8 个专家的混合体,最长上下文 8192 token。(star 43K)

2、DarkGPT:基于 GPT-4-200K,查询泄露的数据库[17]

基于 GPT-4 的开源情报助手,从付费的 DeHashed 高效地搜集和分析信息,对网络安全和数据泄露调查有所帮助。

3、structlog:简单、强大、快速的 Python 日志记录库[18]

一个 Python 日志库,强调结构化和类型安全的日志记录,兼容 logging 标准库,支持输出 JSON、logfmt 和漂亮的控制台日志。(star 3.1K)

4、pydumpling: 针对 Python 的异常调试器[19]

Python Debug 工具,与 Linux 中调试 core dump 文件一样,支持在异常发生时/程序任意位置保留当前调用栈帧,然后通过 pdb 进行调试。支持全局 hook,支持服务器远程调试。(投稿自@cocolato)

5、can_ada:快速且符合规范的 URL 解析库[20]

符合 WHATWG 规范的 URL 解析器,也用在了 Node.js 等项目中。比标准库 urllib 快 4 倍。

6、Mindgraph:使用 AI 生成和查询不断扩展的知识图谱[21]

一个验证概念的项目,可作为模板,用于构建和自定义自己的 CRM 解决方案,重点是易于集成和可扩展性。

6fbb6ef4a78c5984ea06d2465895cc4b.png

7、speechbrain:基于 PyTorch 的语音工具包[22]

一个 PyTorch 工具包,专为快速简便地创建先进的语音和文本处理技术而设计,可加速对话式 AI (即语音助手、聊天机器人和大语言模型)开发。(star 7.7K)

8、python-anyconfig:以通用 API 加载和转储各种格式的配置文件[23]

提供了非常简单和统一的 API 来处理各种格式的配置文件,支持格式有 JSON、ini、Pickle、XML、Java properties、YAML、TOML,等等。

9、Llama-Chinese: Llama 中文社区,最好的中文 Llama 大模型[24]

专注于 Llama 模型在中文方面的优化和上层建设的高级技术社区,定期组织线上活动、技术研讨和经验分享,促进成员间的创新交流。(star 9K)

10、python-for-android:将 Python 程序变成 Android APK[25]

可将 Python 应用打包成在 Android 设备上运行的二进制文件(APK、AAB 和 AAR),支持多种 CPU 架构,支持大多数纯 Python 包和一些流行的依赖于 C 代码的包(如 numpy、sqlalchemy)。(star 8K)

11、img2img-turbo:Stable Diffusion turbo 实现的 sketch2image、day2night 等[26]

基于素描快速生成图片、夜晚图片转换为白天(或相反)、晴天图片转换为雨天,等等。

12、ludic:用纯 Python 构建动态 HTML 页面的轻量级框架[27]

使用类似于 React 的组件构建 HTML 页面,旨在与 htmx.org 一起使用,几乎不需写任何 JavaScript。后端基于 Starlette 框架。

🐢播客&视频

1、带大家感受一下没有 GIL 的 CPython[28]

CPython 主线分支已合入了可禁用 GIL 的开关,这则视频带大家体验一下没有 GIL 的 Python 会有什么样的表现。

2、ruff、uv 和 Astral:Python 工具链,使用 Rust 提速[29]

ruff 和 uv 出自同一个团队,给 Python 的基础工具链带来了非常有前景的影响。这期播客对话了 Charlie Marsh。(附:另一则相似话题的播客 uv - Python 包的下一次演变?[30]

🐢赠书福利

不定期的福利活动,本期赠书 5 本《Python数据结构与算法分析(第3版)》,开奖时间 3 月 29 日 。请给 Python猫[31] 公众号发送数字“8043”,获取抽奖小程序码。

书是用 Python 描述数据结构与算法的开山之作,汇聚了作者多年的实战经验,透彻讲解在 Python 中通过一系列存储机制高效地实现各类算法。这本书让你深刻理解 Python 数据结构、递归、搜索、排序、树与图的应用,等等。

🐼欢迎订阅

  • 微信公众号[32]:除更新周刊外,还发布其它原创作品,并转载一些优质文章。(可加好友,可加读者交流群)

  • 博客[33] 及 RSS[34]:我的独立博客,上面有历年原创/翻译的技术文章,以及从 2009 年以来的一些随笔。

  • 邮件[35] 及 RSS[36]:在 Substack 上开通的频道,满足你通过邮件阅读时事通讯的诉求。

  • Github[37]:你可以获取本周刊的 Markdown 源文件,做任何想做的事!

  • Telegram[38]:除了发布周刊的通知外,我将它视为一个“副刊”,补充发布更加丰富的资讯。

  • Twitter[39]:我的关注列表里有大量 Python 相关的开发者与组织的账号。

参考资料

[1]

投稿: https://github.com/chinesehuazhou/python-weekly

[2]

电报频道: https://t.me/pythontrendingweekly

[3]

我的开源优先级转变了: https://gregoryszorc.com/blog/2024/03/17/my-shifting-open-source-priorities/

[4]

如何远程唤醒家里的电脑?: https://bernsteinbear.com/blog/wakeonlan/

[5]

Python 程序的内存占用情况: https://codebeez.nl/blogs/the-memory-footprint-of-your-python-application/

[6]

正则表达式字符“$”并不意味着“字符串末尾”: *https://sethmlarson.dev/regex-$-matches-end-of-string-or-newline*

[7]

介绍 Python 中所有的双下方法: https://www.pythonmorsels.com/every-dunder-method/

[8]

Python 多语言支持实现国际化与本地化的最佳实践: https://juejin.cn/post/7348264185325568036

[9]

在 Windows 上利用 Qwen 大模型搭建一个 ChatGPT 式的问答小助手: https://juejin.cn/post/7347670979634167823

[10]

(如何(用Python)开发一个(Lisp)解释器): https://www.norvig.com/lispy.html

[11]

使用 Python 解析 URL: https://tkte.ch/articles/2024/03/15/parsing-urls-in-python.html

[12]

Python 鸭子类型:编写灵活且解耦的代码: https://realpython.com/duck-typing-python/

[13]

用 Python 实现最小可用的 PostgreSQL: https://ivdl.co.za/2024/03/02/pretending-to-be-postgresql-part-one-1/

[14]

给框架开发者的建议: https://deven.codes/posts/building-for-builders/

[15]

Python 潮流周刊第一季精华合集(1~30): https://pythoncat.top/posts/2023-12-11-weekly

[16]

grok-1:马斯克开源的 Grok: https://github.com/xai-org/grok-1

[17]

DarkGPT:基于 GPT-4-200K,查询泄露的数据库: https://github.com/luijait/DarkGPT

[18]

structlog:简单、强大、快速的 Python 日志记录库: https://github.com/hynek/structlog

[19]

pydumpling: 针对 Python 的异常调试器: https://github.com/cocolato/pydumpling

[20]

can_ada:快速且符合规范的 URL 解析库: https://github.com/tktech/can_ada

[21]

Mindgraph:使用 AI 生成和查询不断扩展的知识图谱: https://github.com/yoheinakajima/mindgraph

[22]

speechbrain:基于 PyTorch 的语音工具包: https://github.com/speechbrain/speechbrain

[23]

python-anyconfig:以通用 API 加载和转储各种格式的配置文件: https://github.com/ssato/python-anyconfig

[24]

Llama-Chinese: Llama 中文社区,最好的中文 Llama 大模型: https://github.com/LlamaFamily/Llama-Chinese

[25]

python-for-android:将 Python 程序变成 Android APK: https://github.com/kivy/python-for-android

[26]

img2img-turbo:Stable Diffusion turbo 实现的 sketch2image、day2night 等: https://github.com/GaParmar/img2img-turbo

[27]

ludic:用纯 Python 构建动态 HTML 页面的轻量级框架: https://github.com/paveldedik/ludic

[28]

带大家感受一下没有 GIL 的 CPython: https://www.bilibili.com/video/BV1im411R7UB

[29]

ruff、uv 和 Astral:Python 工具链,使用 Rust 提速: https://podcast.pythontest.com/episodes/ruff-astral-uv-charlie-marsh

[30]

uv - Python 包的下一次演变?: https://talkpython.fm/episodes/show/453/uv-the-next-evolution-in-python-packages

[31]

Python猫: https://img.pythoncat.top/pythoncat.png

[32]

微信公众号: https://img.pythoncat.top/python_cat.jpg

[33]

博客: https://pythoncat.top

[34]

RSS: https://pythoncat.top/rss.xml

[35]

邮件: https://pythoncat.substack.com

[36]

RSS: https://pythoncat.substack.com/feed

[37]

Github: https://github.com/chinesehuazhou/python-weekly

[38]

Telegram: https://t.me/pythontrendingweekly

[39]

Twitter: https://twitter.com/chinesehuazhou

05942777d88c0771216861b2971061e8.gif

如果你觉得本文有帮助

请慷慨分享点赞,感谢啦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1542131.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

29-5 webshell 流量分析 - 菜刀

环境准备:构建完善的安全渗透测试环境:推荐工具、资源和下载链接_渗透测试靶机下载-CSDN博客 一、上传木马到靶场然后使用菜刀连接抓取流量 1)上传木马到upload-labs靶场 自己创建一个php文件作为木马 <?php eval($_POST["pass"]);2)然后开启 Wireshark …

nodejs+vue超市在线销售系统的设计与实现pythonflask-django-php

当今社会已经步入了科学技术进步和经济社会快速发展的新时期&#xff0c;国际信息和学术交流也不断加强&#xff0c;计算机技术对经济社会发展和人民生活改善的影响也日益突出&#xff0c;人类的生存和思考方式也产生了变化。传统超市在线销售采取了人工的管理方法&#xff0c;…

【Hive】HIVE运行卡死没反应

Hive运行卡死 再次强调 hive&#xff1a;小兄弟&#xff0c;没想到吧&#xff0c;咱可不是随便的人。&#x1f604; 那么&#xff0c;这次又遇见了hadoop问题&#xff0c;问题描述是这样的。 hive> insert into test values(1, nucty, 男); Query ID atguigu_202403241754…

Apache HTTP服务器(Linux离线编译安装)

Apache HTTP服务器&#xff08;Linux离线编译安装&#xff09; Apache是普通服务器&#xff0c;本身只支持html即普通网页。可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。反之不然)。 Apache和Tomcat都可以做为独立的w…

nodejs+vue电影院订票信息管理系统pythonflask-django-php

当今社会已经步入了科学技术进步和经济社会快速发展的新时期&#xff0c;国际信息和学术交流也不断加强&#xff0c;计算机技术对经济社会发展和人民生活改善的影响也日益突出&#xff0c;人类的生存和思考方式也产生了变化。传统电影院订票采取了人工的管理方法&#xff0c;但…

最短路-虚拟节点

思路&#xff1a;我们可以开虚拟节点来连接两个结点权值二进制1的个数相同的两个结点&#xff0c;由于1e9内1的个数不超过30&#xff0c;所以开30个虚拟节点&#xff0c;第i个结点连向二进制1的个数为i的点&#xff0c;然后跑dij即可。 代码&#xff1a; int n, m; struct d …

深入理解栈和队列(二):队列

个人主页&#xff1a;17_Kevin-CSDN博客 专栏&#xff1a;《数据结构》 一、队列的概念和结构 队列是只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表&#xff0c;队列具有先进先出 FIFO(First In First Out) 入队列&#xff1a;进行插入操作的…

中间件设置静态资源目录

文章目录 为什么要设置静态资源目录设置静态资源代码示例 为什么要设置静态资源目录 服务器中的代码&#xff0c;对于外部来说都是不可见的&#xff0c; 所以我们写的html页面&#xff0c;浏览器无法直接访问 如果希望浏览器可以访问&#xff0c;则需要将页面所在的目录设置静…

C语言——sizeof与strlen的对比

一.sizeof 我们在学习操作符的时候&#xff0c;就了解到了sizeof操作符&#xff0c;它的作用是求参数所占内存空间的大小&#xff0c;单位是字节。如果参数是一个类型&#xff0c;那就返回参数所占的字节数。 #include <stdio.h>int main() {int a 10;size_t b sizeo…

surface go 2简单的配置

1.基本的配置信息 cpu 4425Y 感觉还是比较的弱 但是处理基本的网页浏览或收发电子邮件还是很不错的 2. C:\Users\win>systeminfo 主机名: DESKTOP-F5TT6HJ OS 名称: Microsoft Windows 10 专业版 OS 版本: 10.0.19045 暂缺 Build 19045 …

机器学习——贝叶斯分类器(基础理论+编程)

目录 一、理论 1、初步引入 2、做简化 3、拉普拉斯修正 二、实战 1、计算P(c) 2、计算P(x|c) 3、实战结果 1、数据集展示 2、相关信息打印 一、理论 1、初步引入 在所有相关概率都已知的理想情形下&#xff0c;贝叶斯决策论考虑如何基于这些概率和误判损失来选择最…

STM32通过串口发送指令控制LED灯亮灭OLED并显示命令

先来看看程序运行的结果吧&#xff1a; 接下来就不说废话了&#xff0c;自己看源代码吧&#xff01;每一行我都做了注释&#xff1a; 首先是主函数main.c文件&#xff1a; #include "stm32f10x.h" // Device header #include "OLED.h" …

学习SpringBoot笔记--知识点(1)

目录 SpringBoot介绍 创建一个最基础的springbooot项目 使用Spring Initializr创建springboot项目 Spring Boot 自动配置机制 SpringBoot常用注解 1.组件注册 2.条件注解 3.属性绑定 SpringBoot自动配置流程​编辑 学习SpringBoot的方法 ​编辑 SpringBoot日志配置…

AJAX——JSON

目录 一、JSON概述 二、JSON对象语法 三、JSON序列化方法 四、JSON与XML比较 五、Java对象与Json对象的转换 六、Js解析服务器发送过来的JSON字符串 七、$.getJSON() 一、JSON概述 JSON简介:JSON的全称为JavaScript Object Nation(JavaScript 对象表示语法)&#xff0c;…

基于nodejs+vue的BBS论坛系统python-flask-django-php

为了更好地发挥本系统的技术优势&#xff0c;根据BBS论坛系统的需求&#xff0c;本文尝试以B/S架构设计模式中的express框架&#xff0c;nodejs语言为基础&#xff0c;通过必要的编码处理、BBS论坛系统整体框架、功能服务多样化和有效性的高级经验和技术实现方法&#xff0c;旨…

【Web】NKCTF 2024 个人wp(部分)

目录 my first cms 全世界最简单的CTF attack_tacooooo 属实太菜了&#xff0c;3/4 my first cms 一眼搜版本2.2.19 CVE -CVE-2024-27622 GitHub - capture0x/CMSMadeSimple 访问/admin/login.php 爆出弱口令&#xff0c;后台登录 admin Admin123 Extensions > User D…

<Linux> 模拟实现文件流 - 简易版

目录 1. FILE 结构设计 2、函数使用及分析 3、文件打开 fopen 4. 缓冲区刷新fflush 5. 数据写入fwrite 6. 文件关闭 fclose 7. 测试 8. 小结 1. FILE 结构设计 在设计 FILE 结构体前&#xff0c;首先要清楚 FILE 中有自己的缓冲区及冲刷方式 缓冲区的大小和刷新方式因…

【云开发笔记No.6】腾讯CODING平台

腾讯云很酷的一个应用&#xff0c;现在对于研发一体化&#xff0c;全流程管理&#xff0c;各种工具层出不穷。 云时代用云原生&#xff0c;再加上AI&#xff0c;编码方式真是发生了质的变化。 从前&#xff0c;一个人可以写一个很酷的软件&#xff0c;后来&#xff0c;这变得…

Day08 Java复习8 Spring MVC概念

Day09 Java复习9 Spring MVC spring mvc 的核心组件是什么&#xff1f; DispatcherServlet 1.JAVA 和Spring 、Spring Boot 、Spring MVC的关系 你要举办一个生日派对&#xff0c;而且你希望它既特别又好玩。Java就像是举办派对的地方&#xff0c;Spring、Spring Boot和Spri…

javaSSM公司招聘管理系统IDEA开发mysql数据库web结构计算机java编程maven项目

一、源码特点 IDEA开发SSM公司招聘管理系统是一套完善的完整企业内部系统&#xff0c;结合SSM框架和bootstrap完成本系统&#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;MAVEN方式加 载&#xff0c;系统具有完整的源代码和…