Python 潮流周刊#21:如何提升及测量 Python 代码的性能?

这篇具有很好参考价值的文章主要介绍了Python 潮流周刊#21:如何提升及测量 Python 代码的性能?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。标题取自其中三则分享,不代表全部内容都是该主题,特此声明。

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

微信 | 博客 | 邮件 | Github | Telegram | Twitter

原文☞:https://pythoncat.top/posts/2023-09-23-weekly

🦄文章&教程

1、在单核情况下加快 Python 代码速度

文章使用弗洛伊德-斯坦伯格抖动算法为例,使用各种技巧来提升代码性能,实现将耗时从 2339 微秒逐步降低到 554 微秒。涉及的一些概念:指令级并行 (ILP)、分支预测、单指令多数据(SIMD)、内存层次结构等。

2、使用 Radon 作 Python 的代码度量

一篇基础的入门教程,了解如何用 Radon 来衡量 Python 的代码复杂度,即计算圈复杂度等指标,介绍了相关命令的使用。

3、Python(大部分)由语法糖组成

Brett Cannon 写了一系列关于“语法糖”的博客,解析了 80 多个语法糖特性。文章基于他在 PyCon 的演讲及博客,介绍了其中的部分内容。

4、迎接新的 SymPy

SymPy 是一个用于符号计算(symbolic computation)的库,可以处理代数、微积分、离散数学等领域的问题。这是一个系列文章,介绍它将迎来的重大变化。文章描述了 SymPy 当前存在的速度问题、为加速它而作的工作、将来的提速计划。(附:系列第二篇:SymPy 多项式计算)

5、使用 import-linter 让你的 Python 项目架构更整洁

在依赖关系治理方面,import-linter 是一个非常有用的工具。它通过提供各种类型的“契约”,让我们得以将项目内隐式的复杂依赖关系,通过配置文件显式的表达出来。文章介绍了它的入门使用,以及 6 种修复依赖关系的技巧。

6、CPython 如何用布隆过滤器作字符串处理?

CPython 在处理字符串时使用了布隆过滤器,比如 splitlines()、strip() 两个函数,文章介绍了它们的实现原理。文章还介绍了典型布隆过滤器的实现原理,以及 CPython 中布隆过滤器的实现(不到 50 行 C 代码)。

7、Python 中 UUID 的使用

介绍了uuid 库的几个方法:uuid1() 利用系统 MAC 地址与时间戳生成 uuid;uuid4() 生成完全随机的 uuid;uuid3() 和 uuid5() 基于常量命名空间和变量名生成 uuid,前者使用 MD5 算法,后者使用 SHA-1 算法。

8、为什么有这么多 Python Dataframe?

为什么会有 Pandas、Polars、Dask 和 PySpark 等大量的 Dataframe 库?作者认为主要的原因是它的四种角色模型:电子表格、关系数据库、二维数组/矩阵、对象,以及由此衍生出的一系列问题。

9、使用 Python 模拟“三门问题”

Monty Hall 问题也被称为三门问题,是一道挑战人们直觉的概率问题。文章使用 Python 来模拟这个问题,看看需要多久才能赢取奖品。

10、6 件可以用 Functools 模块做的很酷的事

文章介绍了 functools 标准库的 6 个使用场景:@cache 缓存、@total_ordering 让你少写双下方法、partial() 冻结函数、@singledispatch 泛型函数、@wraps 装饰器、reduce() 函数。

11、深入理解 pytest.main():Python 测试框架的核心功能解析

pytest.main 是 Pytest 框架中一个非常实用的函数,用于从命令行运行测试集或者以编程方式运行测试。文章探讨了它的用法和一些常见的应用场景。

12、7 个极佳的 Python 身份验证库

介绍了 7 个不错的身份验证库:Authlib、Pyjwt、Flask-login、Django-allauth、ItsDangerous、Python Social Auth、Flask-security。(附:中文翻译)

🎁Python潮流周刊🎁已免费发布了 21 期,访问下方链接,即可查看全部内容:https://pythoncat.top/tags/weekly

原文☞:https://pythoncat.top/posts/2023-09-23-weekly

🐿️项目&资源

1、radon:Python 代码的各种指标

一个 Python 代码指标分析工具,可以计算圈复杂度、原始指标、Halstead 指标、可维护性指数,可用于 CI 集成,可与 Jupyter Notebook 一起使用。(star 1.5K)

2、agents:自主语言代理的开源框架

自主语言代理(Autonomous Language Agents)指的是能够独立执行自然语言处理任务的智能代理系统。这个库支持长期短期记忆、工具使用、Web 导航、多 agent 通信、人机交互和符号控制等功能。(star 2.6K)

Python 潮流周刊#21:如何提升及测量 Python 代码的性能?

3、quasiqueue:一个多进程库

一个用于 Python 多进程的库,便于管理长时间运行的多进程作业。可处理进程创建和清理、信号管理、跨进程通信以及其它在处理多进程时的麻烦事。

4、pygraft:可配置的模式和知识图谱生成

可根据用户指定的参数生成逼真的模式和知识图谱,通过使用 DL 推理器(HermiT)来确保逻辑一致性。

5、toml-bench:在 Python 中该用哪个 toml 库?

这个仓库主要从多个维度比较了 toml、tomli/tomli_w、tomlkit、pytomlpp、rtoml 和 qtoml 这几个库,考察它们在处理数据时的行为表现以及性能。

6、SyncDreamer:以单视角图像生成多视角一致的图像

提供一张图片,使用 Paint3D 分割前景对象,通过推理生成多个视角的图像。

7、nanosam:使用 NVIDIA TensorRT 实时运行的 SAM 模型

Segment Anything(SAM)是在计算机视觉领域中对图像或视频中的任何对象进行分割的任务,以提取出具有语义或视觉特征的子区域或对象。

8、logparser:用于日志解析的机器学习工具包

国人开源作品。可自动从非结构化的日志信息中提取出结构化的关键信息。(star 1.2K)

9、llama2.mojo:纯 Mojo 版本的 Llama 2

作者将 Python 版本的 llama2.py 移植成 Mojo 版本,将性能提高了近 250 倍。(star 1.1K)

10、bisheng:一个开放的 LLM DevOps 平台

一款领先的开源大模型应用开发平台,中文“毕昇”,可以搭建各类丰富的大模型应用:分析报告生成、知识库问答、对话、要素提取等。

原文☞:https://pythoncat.top/posts/2023-09-23-weekly

🐢播客&视频

1、EuroPython 2023 的 146 个视频

今年 EuroPython 活动的演讲视频。

2、Real Python 播客 #172:使用 Scalene 测量 Python 性能

Scalene 是一款高性能的 CPU、GPU 和内存分析器,可以从单个函数或代码行级别分析代码,并比较在 Python 和 C 代码中花费的时间。播客嘉宾是马萨诸塞大学教授,他与学校实验室的学生开发了 Scalene。

🐱赞助&支持

如果你喜欢周刊,请分享给其他需要的同学,让更多人可以从中受益~

如果你觉得周刊有价值,请随意赞赏 或 买杯咖啡 进行支持!

如果你想帮助周刊办得更好,欢迎向我们投稿或提出建议:投稿/建议通道

如果你是品牌方或广告主,欢迎私信我,洽谈赞助与合作事项。文章来源地址https://www.toymoban.com/news/detail-712054.html

🐼欢迎订阅

  • 微信公众号:除更新周刊外,还发布其它原创作品,并转载一些优质文章。(可加好友,可加读者交流群)
  • 博客 及 RSS:我的独立博客,上面有历年原创/翻译的技术文章,以及从 2009 年以来的一些随笔。
  • Github:你可以获取本周刊的 Markdown 源文件,做任何想做的事!
  • 邮件:在 Substack 上开通的频道,满足你通过邮件阅读时事通讯的诉求。
  • Telegram:除了发布周刊的通知外,我将它视为一个“副刊”,补充发布更加丰富的资讯。
  • Twitter:我的关注列表里有大量 Python 相关的开发者与组织的账号。

到了这里,关于Python 潮流周刊#21:如何提升及测量 Python 代码的性能?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

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

    你好,我是猫哥。这里记录每周值得分享的 Python 及通用技术内容,部分为英文,已在小标题注明。(标题取自其中一则分享,不代表全部内容都是该主题,特此声明。) 首发于我的博客,https://pythoncat.top/posts/2023-06-10-weekly6 1、CPython 贡献日记:Python 3.12 有什么? 文章出自群

    2024年02月08日
    浏览(100)
  • Python 潮流周刊#12:Python 中如何调试死锁问题?

    查看全文: https://pythoncat.top/posts/2023-07-22-weekly 🦄文章教程 1、使用 PyStack 调试 Python 中的崩溃和死锁 (英) 2、介绍一个 FastAPI 项目模板 (英) 3、Python FastAPI 微服务与 Polylith 架构 (英) 4、Python日志模块:实战应用与最佳实践 5、测量 Python 和 Rust 异步 Web 服务的性能 (英) 6、dinov

    2024年02月16日
    浏览(50)
  • Python潮流周刊#9:如何在本地部署开源大语言模型?

    你好,我是猫哥。这里每周分享优质的 Python 及通用技术内容,部分为英文,已在小标题注明。(标题取自其中一则分享,不代表全部内容都是该主题,特此声明。) 首发于我的博客:https://pythoncat.top/posts/2023-07-01-weekly 周刊的投稿通道已开放 ,请在 Github 项目中提交 issue:

    2024年02月11日
    浏览(64)
  • Python 潮流周刊第 30 期(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。 周刊全文:https://pythoncat.top/posts/2023-12-09-weekly 以下是本期摘要

    2024年02月05日
    浏览(62)
  • Python 潮流周刊第 29 期(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。 周刊全文:https://pythoncat.top/posts/2023-12-02-weekly 以下是本期摘要

    2024年02月05日
    浏览(89)
  • Python 潮流周刊第 19 期摘要

    原文全文:https://pythoncat.top/posts/2023-09-09-weekly 🦄文章教程 1、Mojo🔥 终于提供下载了! 2、我们能从 PEP-703 中学到什么? 3、用 500 行 Python 代码写一个 C 语言编译器 4、简单介绍如何用 Python 作协议缓冲区编程 5、用 Python 和 matplotlib 创建漂亮的极坐标直方图 6、布隆过滤器图解

    2024年02月09日
    浏览(61)
  • Python 潮流周刊第 35 期(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。 周刊全文:https://pythoncat.top/posts/2024-01-13-weekly 以下是本期摘要

    2024年02月02日
    浏览(45)
  • Python 潮流周刊第 20 期(摘要)

    你好,我是猫哥。本周刊分享优质的 Python、AI 及通用技术内容,大部分为英文。这里是标题摘要版,查看全文请至☞:https://pythoncat.top/posts/2023-09-16-weekly 本周刊开通 Telegram 频道后,已有 650+ 小伙伴加入,欢迎你到来:https://t.me/pythontrendingweekly 1、三种对 Python 作基准测试的方

    2024年02月08日
    浏览(48)
  • Python 潮流周刊第 31 期(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。 周刊全文:https://pythoncat.top/posts/2023-12-16-weekly 以下是本期摘要

    2024年02月04日
    浏览(43)
  • Python 潮流周刊第 32 期(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。 周刊全文:https://pythoncat.top/posts/2023-12-23-weekly 以下是本期摘要

    2024年02月04日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包