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

博客原文:https://pythoncat.top/posts/2023-06-03-weekly5

文章&教程

1、并发一百万个任务要用多少内存?(英文)

文中测试了主流的编程语言(Rust、Go、Java、C#、Python、Node.js 和 Elixir),依次运行 1 个、1 万、10 万和 100 万个任务,统计了这些语言所消耗的内存。随着任务量增加,它们的排名出现了较大变化,让我感觉挺意外的。

2、使用这些方法让你的 Python 并发任务执行得更好 (英文)

使用 asyncio 有什么最佳实践呢?这篇文章介绍了 asyncio.gather、asyncio.as_completed 和 asyncio.wait API,还介绍了 Python 3.11 中引入的新 asyncio.TaskGroup 特性。(附一篇不完整的译文

3、上岸第一剑,编程语法必修:Python 并发编程

一篇长文,以四个章节(网络编程、多线程、多进程、协程)全面介绍了 Python 并发编程的知识点。

4、Python 多线程编程的终极指南 (英文)

也是一篇长文,介绍了 Python 多线程编程的方方面面,真的是一份终极指南。

5、编程语言是如何实现并发的之并发模型篇

依然是长文,介绍了常见的并发模型及不同编程语言是如何实现的。它的姊妹篇是《编程语言是如何实现并发的之操作系统篇》,都是图文并茂,资料翔实。

6、鹅厂程序员的 9 个生存法则

作者分享了自己工作多年对代码设计、架构设计和工作思维的经验,比如 DRY 原则、SOLID 原则、高可用设计、如何想尽一切办法“偷懒”,等等。(文中提到了面向对象编程的原则,这里顺便推荐另一位鹅厂程序员的《Python工匠》系列的第 12-14 章)

7、一览 Python 3.12!PEP 701 —— f-string 语法规范化

f-string 是 Python 最好用的特性之一,但它也有诸多限制。即将发布的 3.12 会对 f-string 作语法规范化,详情可查看 PEP-701 。这里分享的文章带大家直观地感受了这个改动在代码的词法解析(lexing)层面的不同。

8、PyCharm:新用户界面的五大亮点 (英文)

大家都用上 PyCharm 新的 UI 了么?这份官方教程介绍了新 UI 的使用方法及亮点。

9、PEP-594 已被实现:Python 3.13 将移除 20 个标准库 (英文)

Python 3.12 正式版本还要几个月才发布,这边 3.13 已经迫不及待地移除了 20 个标准库。值得一提的是,2to3 项目及 lib2to3 模块也将会被移除。

10、Grasshopper:一个用于负载测试的开源 Python 库 (英文)

Locust 是 Python 最主流的分布式负载测试库,而文章介绍的 Grasshopper 是新开源的基于 Locust 与 Pytest 的更全面的性能测试库。

11、Python 装饰器:用包装巫术增强你的代码 (英文)

Python 装饰器是增强代码行为和灵活性的强大工具,文章内容从基础到高阶,是不错的学习材料。

12、三个练手项目的实战教程:

  • 用 Python 开发 Telegram 机器人 (英文):开发 tg 机器人,教程使用 Tornado 作后端,项目部署在 Render 平台上
  • 花一周末用 Python 实现 DNS (英文):教程指导实现一个 DNS 解析器,总代码仅约 200 行,但作者给出了很多学习材料和代码讲解,你能学到的绝对够多。另外,教程最后还有 7 个练习题,可以进一步开发 DNS 解析器的功能。(Julia Evans 是一个宝藏作者,博客网站pandas-cookbook ,等等,强烈推荐!!!)
  • 用 Python 构建你自己的 Git (英文):这个项目我要给它满分!教程网站设计得独特而酷炫,从最小可行项目起步,逐渐添加代码,手把手教你实现 Git 的各种功能。每章都使用 Git 的差异比对方式,明确告诉你增删了哪些代码,良心满满,全网估计找不着第二家!

项目&资源

1、frogmouth:一个在终端中浏览 Markdown 的工具 (英文)

frogmouth 可以打开本地或 URL 中的 md 文件,具有类似浏览器的导航条、历史记录、书签和目录。

2、使用 Meta AI 的 SAM 进行图像分割的 Python GUI (英文)

一个 Python 桌面程序,为 Meta 公司的 AI 模型 SAM 提供了图形界面,可以提取照片里面的物体。

3、GirlfriendGPT:你的人工智能伴侣 (英文)

你有对象了么?这个入门项目使用 ChatGPT 构建一个 AI 伴侣, 拥有个性化的人格、声音以及自拍照!

4、Python 进化之路.pptx

一份技术分享的 PPT 材料,介绍了 Python 3.7-3.11 在性能、类型体验及开发者体验方面的优化。

5、soundstorm-pytorch:在 Pytorch 中实现 SoundStorm (英文)

SoundStorm 是 Google Deepmind 新提出的一个高效的、非自回归的音频并行生成模型。soundstorm-pytorch 使用 Pytorch 实现了这个模型。

6、asynq:Python 的异步编程库 (英文)

asynq 是 Quora 开发的异步编程库,专注于对外部服务的批处理请求。对于 memcache、redis 等存储服务,它发起一次请求批量获取多个 key,比发出多次请求每次获取一个 key 要快得多。

7、Propan:功能强大且易用的 Python 异步 Web 框架 (英文)

一个基于 pydantic、fastapi 和 pytest 的异步框架,简化了 MQ 的代码集成,并提供了一个有用的开发工具包。其特点是基于消息架构(Messaging Architecture)设计,所以它还是个声明式的 MQ 框架。

8、talkGPT4All:基于 GPT4All 的一个语音聊天程序

它利用 OpenAI 的 Whisper 模型将用户输入的语音转换为文本,再调用 GPT4All 的语言模型得到回答文本,最后利用文本转语音(TTS)的程序将回答文本朗读出来。

9、lightly:一个用于图像自监督学习的 Python 库 (英文)

这是一个用于自我监督学习的计算机视觉框架,以类似 PyTorch 的风格编写,支持使用 PyTorch Lightning 进行分布式训练。

播客&视频

1、硬地骇客:独立开发赚钱难?你需要正确的build策略

探讨了在海外独立开发者中最常用的 build in public 策略。我对这期节目很有共鸣,打算针对本周刊的一些数据、周刊的创作流程、个人知识输入及创作体系等话题,不久会做一些分享。

2、代码之外:离开微软、人生在于体验?阅读的意义、主动和被动的人生

这是一档新上线的程序员闲聊播客节目,主题很随性,但常常有能打动人的片段。这里分享的是第一期,它目前已更新到第三期,第三期请的嘉宾是 Vue 的作者尤雨溪!

3、Changelog #526:与你的朋友一起 Git (英文)

这期播客聊了一些 Git 工具,如 Git-Heat-Map、Git-Sim、git-bug、GitUI,等等。因为有两个工具是用 Python 编写的,因此也聊了一些 Python 安装依赖包的话题。Brett Cannon 针对主播们的错误用法,写了一篇回应博客 ,主要介绍了 pipx、.pyz 文件以及系统包管理器的正确使用。

4、#418:如何在 Python 程序中加密保存 (英文)

“Talk Python To Me”的这期播客探讨如何处理程序要用到的敏感信息,同时也聊到了日常个人密码的保存方案。我正巧本周还看到一篇《2023-21: 我的 1Password 密钥管理实践》,它系统介绍了密码管理、SSH/Shell 集成和 CI/CD 应用等内容。

5、吴恩达三门新的生成式 AI 课程 (英文)

使用 OpenAI 的 ChatGPT API 构建系统、LangChain 用于开发 LLM 应用、Diffusion模型是如何工作的。

6、MIT 的三门 Python 相关课程 (英文)

麻省理工学院的免费课程:Python 计算机科学和编程简介、经典机器学习、深度学习。

赞助&支持

内容创作不易,如果你觉得有帮助,请随意赞赏买杯咖啡或在爱发电进行支持!如果你喜欢本周刊,请转发分享给其他需要的同学~

另诚邀赞助者,欢迎通过私信联系。

关于周刊

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

订阅方式:Python猫 | RSS | 邮件 | Github | Telegram | Twitter

Python潮流周刊#5:并发一百万个任务要用多少内存?的更多相关文章

  1. Python 多线程教程:并发与并行

    转载于: https://my.oschina.net/leejun2005/blog/398826 在批评Python的讨论中,常常说起Python多线程是多么的难用.还有人对 global int ...

  2. python之socketserver实现并发

    python之socketserver实现并发 服务端 import socketserver #socketserver模块是用来实现并发 # 我们自己的类里一定要继承socketserver.Ba ...

  3. python 使用多进程实现并发编程/使用queue进行进程间数据交换

    import time import os import multiprocessing from multiprocessing import Queue, pool ""&qu ...

  4. python与java的内存机制不一样;java的方法会进入方法区直到对象消失 方法才会消失;python的方法是对象每次调用都会创建新的对象 内存地址都不i一样

    python与java的内存机制不一样;java的方法会进入方法区直到对象消失 方法才会消失;python的方法是对象每次调用都会创建新的对象 内存地址都不i一样

  5. java高并发系列 - 第7天:volatile与Java内存模型

    public class Demo09 { public static boolean flag = true; public static class T1 extends Thread { pub ...

  6. python异步编程之asyncio(百万并发)

      前言:python由于GIL(全局锁)的存在,不能发挥多核的优势,其性能一直饱受诟病.然而在IO密集型的网络编程里,异步处理比同步处理能提升成百上千倍的效率,弥补了python性能方面的短板,如最 ...

  7. Python中实现异步并发查询数据库

    这周又填了一个以前挖下的坑. 这个博客系统使用Psycopy库实现与PostgreSQL数据库的通信.前期,只是泛泛地了解了一下SQL语言,然后就胡乱拼凑出这么一个简易博客系统. 10月份找到工作以后 ...

  8. python之高性能网络编程并发框架eventlet实例

    http://blog.csdn.net/mingzznet/article/details/38388299 前言: 虽然 eventlet 封装成了非常类似标准线程库的形式,但线程和eventle ...

  9. Python通过future处理并发

    future初识 通过下面脚本来对future进行一个初步了解:例子1:普通通过循环的方式 import os import time import sys import requests POP20 ...

  10. python导出zabbix数据并发邮件脚本

    Zabbix没有报表导出的功能,于是通过编写脚本导出zabbix数据并发邮件.效果如下: 下面是脚本,可根据自己的具体情况修改: #!/usr/bin/python #coding:utf-8 imp ...

随机推荐

  1. java网络编程--4 UDP

    java网络编程--4 UDP 1.7.UDP 发短信:不用连接,但是需要知道对方的地址 主要包含两个类:DatagramPacket 和 DatagramSocket 发送消息 发送端: packa ...

  2. Spring 注解整理

    更多内容,前往IT-BLOG 一.核心容器 [1]@Configuration:告诉 Spring 这是一个配置类(配置类=配置文件)[2]@Bean:给容器中注册一个 Bean :类型为返回值类型, ...

  3. day03-搭建微服务基础环境02

    搭建微服务基础环境02 3.创建使用会员微服务模块-service consumer 3.1需求分析 浏览器向service consumer请求某个数据,service consumer会去向ser ...

  4. Java设计模式 —— 代理模式

    15 代理模式 15.1 代理模式概述 Proxy Pattern: 给某一个对象提供一个代理或占位符,由代理对象来控制对原对象的访问. 代理对象是客户端和目标对象的之前的桥梁,它接收来自客户端的请求 ...

  5. AVL树的构建

    package com.xd.leetcode.shu; /** * created by lianzhen on 2020-03-10 10:27. describe:平衡二叉树的构建 * * LL ...

  6. python:模拟购票的小程序

    问题描述:小白学习python的第N天,继续练习.做一个模拟购票的小程序,没有用数据库和文件来存储数据,只是能够单词选择. # hzh 每天进步一点点 # 2022/5/13 17:24 import ...

  7. BISS-C 8通道采集renishaw传感器及其CRC校验

    背景 BISS-C 是常见的位置编码器传输协议,相对于传统的协议,支持更快的传输速度,电器接口为电压差分RS422或者485,抗干扰能力较强,在精密位置传输中应用广泛. 下述信息源自雷尼绍 典型的请求 ...

  8. C 语言版线程池

    一.初始线程池 1.1 何为线程池? 我们先来打个比方,线程池就好像一个工具箱,我们每次需要拧螺丝的时候都要从工具箱里面取出一个螺丝刀来.有时候需要取出一个来拧,有时候螺丝多的时候需要多个人取出多个来 ...

  9. Solon2 常用注解之 @ProxyComponent 用法说明

    在 Solon 提倡"克制"的原则下,托管组件分为: 普通组件 代理组件(即 @ProxyComponent 注解的类).代理的细节可以看下<动态代理的本质> . 之所 ...

  10. Scanner对象的用法

    Java流程控制 想要实现程序与人的交互,我们必须使用Java给我们提供的工具类.就像我最开始写的一篇博客,用Java提供给我们的一个机器人类Robot是控制鼠标键盘的.今天我们学习的是一个可以获取用 ...