Python潮流周刊:Rust 让 Python 再次伟大

news2024/12/27 14:20:30

文章&教程

1、Python修饰器的函数式编程

介绍了装饰器的实现原理、带参装饰器、多装饰器、类装饰器和几个典型的示例。文章发布于 2014 年,代码用的还是 Python 2。之所以分享这篇文章,因为它是左耳朵耗子唯一以 Python 为话题的文章,而且写得详细到位。

2、asyncio 的一些高级用法

出自我们的老朋友@古明地觉 的新系列《asyncio 系列》,半个月内已连载 14 篇。真想问问他是如何做到如此高产又高质量的?!文章回答了:如何设计既能接收协程又能接收普通 Python 函数的 API,如何强制事件循环的迭代,如何在不传递参数的情况下在任务之间传递状态……

3、Nginx+uWSGI 部署 Django 以及负载均衡操作

介绍了 uWSGI 和 Nginx 的配置,实现对 Django 服务的反向代理及负载均衡。该文出自仍在连载的《Django 系列》,目前该系列包含 44 篇文章,能作为系统学习 Django 的参考材料。

4、Rye:一个实验性质的Python包管理系统

Python 目前的包管理工具多得让人眼花缭乱,而 Conda 和操作系统的包管理器也存在诸多问题(本周刊第一期就有两则相关内容)。Flask 作者 Armin Ronacher 用 Rust 开发的 rye,借鉴了 Rust 包管理的经验,试图提供一个标准化的解决方案。这篇文章介绍了 rye 的安装及使用。

5、PyInstaller:将你的Python代码打包成独立应用程序

PyInstaller 可将 Python 程序打包为一个可执行文件,支持多个平台如 Windows、Mac 和 Linux。这是一篇简单清晰的使用教程,除了基础介绍外,难得的是它还介绍了两种打包方式的优缺点,以及打包后常见的 5 个问题。

6、如何在 Python 中实现真正的多线程(英文)

Python 3.12 即将推出“Per-Interpreter GIL(PEP-684)”特性,它允许 Python 实现真正的并行处理。代码虽然已在 alpha 版本中,但目前只能通过 C-API 使用。文章使用 CPython 的test 模块演示了子解释器的示例。

7、GIL vs. nogil: 改动一行代码,提升十倍 I/O 性能(英文)

nogil 项目是另一个试图实现真正多线程的方案,这篇文章测试发现 CPython 3.9-nogil 在单文件和多文件的情况下,比未修改的 CPython 3.9 分别快 2.5 倍和 10 倍。nogil 项目最新的进展是形成了正式的 PEP-703,相关介绍在此。

8、如何在 PyCharm 中创建一个密码生成器?(英文)

PyCharm 官方推出的文章教程,指导在 PyCharm 中创建项目、导入包、使用 Typer 库创建 CLI 应用、运行和调试代码、创建和编辑运行配置,适合于新人学习练手。另外,PyCharm 2023.1.2 版本刚刚发布,可以去尝鲜!

9、Python 元类教程(带示例)(英文)

在 Python 中,一切都是对象,包括。元类是 Python 的一项强大功能,允许你在运行时动态地创建类(实际是创建一个type 类型的对象)。文章探讨元类的基础知识,以及更高级的功能和示例。

10、当在终端输入“ls”后会发生什么?(英文)

有一道很常见的面试题:“当在浏览器输入 google.com 后会发生什么?”由于见得多了,每个人都能回答个一二,但是,经常跟终端打交道的我们,能否回答这个问题呢:当在终端输入命令后会发生什么?文章主要介绍了终端的历史、启动过程、命令的解析和执行过程。

项目&资源

1、WingetUI:更好用的包管理器 UI(英文)

该项目的目标是为 Win 10-11 中最常见的 CLI 包管理器(如 Winget、Scoop 和 Chocolatey)创建一个直观的 GUI。已支持软件包的安装、更新和卸载、排队安装、消息通知、黑暗模式、导入/导出等功能。

2、pandas-ai:支持 AI 功能的 Pandas(英文)

Pandas 无疑是目前最流行的数据分析和处理工具,当它结合了生成式 AI 的能力后,会不会更好用呢?答案似乎是的!pandasai 项目支持用文字的方式操作 Pandas 的数据对象,可简化很多 Pandas 库的操作。

3、promptulate:一个强大的 LLM Prompt Layer 框架

一个专为 Prompt Engineer 设计的 LLM Prompt Layer 框架,支持连续对话、角色预设、对话存储、工具扩展等功能,可以无需代理直接访问,开箱即用。 通过 promptulate,你可以轻松构建起属于自己的 GPT 应用程序。

4、MicroPython:面向微控制器和嵌入式系统的 Python(英文)

MicroPython 新发布了 1.20 版本,引入了一个新的轻量级包管理器,减小了代码大小,并增加了对许多新板的支持。另外,LWN 的这篇文章对此版本做了介绍,文章还提到 Anaconda 有可能在 Q2 将 PyScript 的运行时从 Pyodide 替换为 MicroPython。

5、DB-GPT:以数据库为基础的 GPT 实验项目

使用本地化的 GPT 大模型与你的数据和环境交互,无数据泄露风险,100% 私密,100% 安全。基于 FastChat 构建大模型运行环境,并提供 vicuna 作为基础的大语言模型,通过 LangChain 提供私域知识库问答能力,支持插件模式,在设计上原生支持 Auto-GPT 插件。

播客&视频

1、Ep 40. Rust 和 PyO3:让 Python 再次伟大

断更许久的《捕蛇者说》播客回归了!本期的嘉宾是 PyO3 项目的维护者,他的另一个身份是 wechatpy 的作者。Rust 和 PyO3 项目能放大 Python 的优势,并能改造 Python 的应用生态。我们曾推荐过性能最快的代码分析工具 Ruff,另外 Flask 作者新开发的包管理工具 rye,它们都是 Rust 与 Python 结合的产物。(题外话:看到了捕蛇者说的三位主播发推/发博缅怀左耳朵耗子,想不到他对 Python 圈子有这么多渊源。R.I.P)

2、Talk Python to Me #415: Future of Pydantic and FastAPI(英文)

Pydantic 2.0 使用 Rust 重写了核心及顶层的代码,将对构建在其之上的库产生积极的影响,比如 FastAPI。播客邀请了 Pydantic 的 Samuel Colvin 以及 FastAPI 的 Sebastián Ramírez 一起采访,话题度很新!

3、再访《流畅的 Python》作者 Luciano Ramalho(英文)

我在上个月推荐过新上市的《流畅的 Python》中文第二版(链接),这里补充两则相关材料。这期播客来自 thoughtworks,是在《Fluent Python》英文第二版上市前的访谈,介绍了关于 Python 发展、不同语言的对比、新书的变化等。另外,他们还在 2020 年新书写作期间录了一期“The future of Python”,两期播客都有完整的文字稿。

4、最常用的七种分布式系统模式(英文)

一则简短的科普视频,介绍了七种分布式系统模式:Ambassador、Circuit Breaker、CQRS、Event Sourcing、Leader Election、Publisher/Subscriber、Sharding。视频中的动画和图例都非常直观和舒适,让人赏心悦目。

2023-05-20_pattern.png

问题&讨论

1、作为程序员,有什么提升生活/工作体验的 App、硬件、服务?

V2ex 上的一个帖子,大家对这样的话题似乎很有发言欲。我在此最想推荐的 APP 是 Feedly 和 Substack,用于阅读 RSS 和 Newsletter。Feedly 对本周刊的素材采集帮助极大!(心愿:依靠读者的打赏,让我用上 Feedly Pro+ 的 AI 功能!)

2、rye 应该存在么?(英文)

前文已提到过 rye,那么,mitsuhiko 是出于什么考虑而开发了它呢?它想解决什么样的问题,想打造出一款什么样的工具呢?Python 官方对包管理会有什么发展支持呢?Github 上的这个问题引起了广泛的讨论。

3、你是怎样开始程序员职业生涯的?

V2ex 上的帖子,楼主分享了自己从读书到就业前几年的故事,评论区有不少人分享了自己的经历。你是如何开始自己的程序员之路的呢?

关于周刊

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

如果你对Python感兴趣,想要学习python,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
Python全套学习资料

在这里插入图片描述

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述

上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓
在这里插入图片描述

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

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

相关文章

Springboot_文件下载功能(前端后端)

遇到的问题: 文件下载后文件一直被破坏,无法正常打开文件名乱码,如图 刚开始一直在纠结,是不是后端没有写对,然后导致下载不能使用 后来搜索了一些资料,发现后端没什么问题 然后就开始找到其他项目对比…

【C语法学习】27 - 字符串转换为数字

文章目录 1 atoi()函数1.1 函数原型1.2 参数1.3 返回值1.4 转换机制1.5 示例1.5.1 示例1 1 atoi()函数 1.1 函数原型 atoi():将str指向的字符串转换为整数,函数原型如下: int atoi(const char *str);1.2 参数 atoi()函数只有一个参数str&…

创建vue项目体验

文章目录 使用vue-cli创建vue项目创建出的项目目录结构配置router 运行问题router未找到eslint报错 首页显示单页面内容替换 使用vue-cli创建vue项目 安装vue-cli,创建基本项目 选择步骤 一般创建成功后,提示使用下面的指令运行demo npm run serve创建…

CVE-2022-21661

简介 CVE-2022-21661是一个与WordPress相关的漏洞,涉及到SQL注入问题。该漏洞主要源于WordPress的WQ_Tax_Query类中的clean_query函数,可能允许攻击者通过控制传递给该函数的数据来控制生成的SQL查询,从而执行任意的SQL代码。 当WordPress的…

什么是高防IP?有什么优势?怎么选择高防IP?

在当今的互联网环境中,分布式拒绝服务(DDoS)攻击已经成为一种常见的安全威胁。这种攻击通过向目标服务器发送大量的无效流量,使其无法处理正常的请求,从而达到迫使服务中断的目的。作为一个用户,你是否曾遇…

Navicat 技术指引 | 适用于 GaussDB 的模型功能

Navicat Premium(16.2.8 Windows版或以上) 已支持对 GaussDB 主备版的管理和开发功能。它不仅具备轻松、便捷的可视化数据查看和编辑功能,还提供强大的高阶功能(如模型、结构同步、协同合作、数据迁移等),这…

在线工具收集

在线工具收集 1、在线P图 https://www.photopea.com/ 一款类似于PS的在线抠图软件 ①去除图片中的文字,并填充背景色 第一步:使用矩形选中要清除的文字 第二步:点击编辑选择填充 第三步:选择内容识别,保留透明区域…

Vatee万腾数字引领未来:vatee科技力量的独特路径

在当今数字化浪潮的推动下,Vatee万腾以其卓越的科技力量,正引领着未来的数字化时代,描绘着一条独特的发展路径。通过持续创新、前瞻思维和对技术的深度理解,Vatee万腾正在为未来的科技发展创造新的可能性,塑造着数字引…

操作系统(七)| 设备管理-- 端口 驱动程序 基本I/O控制 磁盘I/O

文章目录 1 设备管理概述1.1 系统总线结构1.2 设备控制器通用结构1.3 I/O设备的模型 2 I/O端口2.1 寻址方式 3 驱动程序4 基本I/O控制方式4.1 程序直接控制4.2 中断I/O方式4.3 DMA方式4.4 I/O通道控制方式 5 I/O管理中的重要思想5.1 设备独立性5.2 SPOOLing技术5.3 I/O软件的多…

4.18每日一题(极坐标累次积分到直角坐标累次积分的转换)

注:rdr化为直角坐标以后r直接消去了,不需要计算

csapp archlab part 1

part A [rootedb3963640a6 misc]#./yas sum.ys [rootedb3963640a6 misc]# ./yis sum.yo./yas 和 ./yis 是汇编语言编译器和模拟器的命令行工具。 ./yas 是一个汇编语言编译器,它将汇编语言代码转换为可执行的二进制文件。./yas sum.ys 将sum.ys文件编译成了sum.yo可…

Visual NLP:图像信息自动提取的未来

本文旨在以简单的方式解释 Visual NLP 的关键概念,让你了解 Visual NLP 的含义、它的用例是什么、如何使用它以及为什么它是构建自动提取管道的未来 。 NSDT在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在…

【坑】JDK21虚拟线程不支持run方法

【坑】JDK21虚拟线程不支持run方法 run // do nothing java.lang.VirtualThread Overridepublic void start() {start(ThreadContainers.root());}Overridepublic void run() {// do nothing}

租车系统开发/多功能租车平台微信小程序源码/汽车租赁系统源码/汽车租赁小程序系统

源码介绍: 多功能租车平台微信小程序源码,作为汽车租赁、摩托车租车平台系统源码,是小程序系统。基于微信小程序的汽车租赁系统源码。 开发环境及工具: 大等于jdk1.8,大于mysql5.5,idea(eclip…

和鲸全程支持:第二届粤港澳大湾区(黄埔)国际算法算例大赛初赛赛程圆满收官!

随着新一轮科技革命与产业变革的加速演进,算法,作为一种战略性的科技、生产要素,已成为推动数字技术与实体经济深度融合的核心支撑。为助力地区大数据与人工智能算法的生态体系建设、赋能社会经济的高质量发展,琶洲实验室&#xf…

k8s部署的java服务查看连接nacos缓存的配置文件

一、问题描述 k8s部署的java服务,使用nacos中的配置文件,需要在缓存中查看该服务具体是使用到了哪些配置文件 二、解决 参考文档: https://nacos.io/zh-cn/docs/system-configurations.html 文档描述如下: 进入java服务容器进入用户目录下的nacos&a…

Caused: java.io.IOException: Failed to bind to 0.0.0.0/0.0.0.0:8080

1、启动jenkins报错,执行命令jenkins报错如下 2、检查8080端口是否被占用,若被占用直接关掉。 lsof -i:8080

React16中打印事件对象取不到值的现象及其原因分析

React16中打印事件对象取不到值的现象及其原因分析 一、背景 在最近的开发过程中&#xff0c;遇到了一个看起来匪夷所思的问题❓&#xff1a; <Inputplaceholder"请输入"onChange{(e) > {console.log(e:, e)}}onKeyDown{handleKeyDown} />此时按理来说我…

yoloV5模型中,x,s,n,m,l之间区别

避免误导大家,从小到大顺序为:n,s,m,l,x YOLOv5 的不同变体(如 YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x 和 YOLOv5n)表示不同大小和复杂性的模型。这些变体在速度和准确度之间提供了不同的权衡,以适应不同的计算能力和实时性需求。下面简要介绍这些变体的区别: YOLOv5s:这…

华清远见嵌入式学习——网络编程——作业4

作业要求&#xff1a;①使用IO多路复用中的select函数实现TCP并发服务器客户端 ②使用IO多路复用中的poll函数实现TCP并发服务器的服务器端 一、 代码 #include <myhead.h>#define SERPORT 8888 //服务器端口号 #define SERIP "192.168.114.113"…