原文: PyCoder's Weekly - Issue #562


  • 230201 Zoom.Quiet(大妈) 用时 37 分钟 完成格式转抄.
  • 230201 Zoom.Quiet(大妈) 用时 13 分钟 完成快译

Have you worked on a project that needed an orchestration tool? How do you define the workflow of an entire data pipeline or a messaging system with Python? This week on the show, Calvin Hendryx-Parker is back to talk about using Apache Airflow and orchestrating Python projects.


什么是编排? 为什么数据/消息的流通会变来变去?





Both nox and tox are multi-environment testing tools. This opinion piece by Hynek compares and contrasts them and explains why increasingly he is using nox.


下一代更好的多系统测试工具应该叫 mox


This article covers three different options for effectively testing Django database access and failure recovery when the database connection is not there.

Bleach is an HTML sanitizing library. 6.0 has been released, along with the announcement that the package is being deprecated. The library is dependent on html5lib which is no longer maintained, the maintainers of Bleach are giving notice that their package will stop being updated after a year.


代码好歹有 语法树, HTML 这东西怎么净化? 人家设计的就是可以乱来的



好象 Guido 退休后, PEP 增长加速了...




There’s been lots of chatter about packaging in Python of late, this discussion centers around Pradyun Gedam’s excellent article. For more on the same topic see last issue’s How to improve Python packaging, or why fourteen tools are at least twelve too many as well.

This discussion spawned from Diego Crespo’s article of the same name talks about the transition that somehow everyone is still interested in talking about.


一段艰难的历史, 也是神奇的故事...



Articles, Tutorials and Talks

In this tutorial, you’ll learn how to use the Python standard REPL (Read-Eval-Print Loop) to run your code interactively. This tool will allow you to test new ideas, explore and experiment with new tools and libraries, refactor and debug your code, try out examples, and more.



REPL 的确是 Python 一大特色, 以往只有 数据库产品才有...


In this tutorial, you’ll work with linear algebra in Python. You’ll learn how to perform computations on matrices and vectors, how to study linear systems and solve them using matrix inverses, and how to perform linear regression to predict prices based on historical data.



大学高等数学没通的, 看了也白看...


“Spatial data science projects frequently require the calculation of proximity to resources.” This article shows you how to calculate proximity in Python code using two different techniques: Euclidean and driving times. Examples use geopandas and routingpy packages.

Justin writes a list of things he has learned over his past 20 years in development. He starts by stating how context is important and that his lessons are from small teams with an emphasis on productivity and being tool agnostic.



对于俺,只有一条: 跟对人, 跟得上 足以飞升

当然文章是好文章,大妈快译在: 20年来作为软件工程师学到的20件事 - be Rustaceans


This posting describes Brenton’s Python Continuous Integration (CI) pipeline setup, from using a pyproject.toml file, to the tools such as black and coverage he uses, to GitHub actions to glue it all together.


GHA 之后, 还有谁能超越?


“This article describes techniques to accelerate a Python codebase by exposing parallelized C++ functions using PyBind.” The example in the article achieves a 3x speed-up through this technique.

The article addresses the following question. Many claim you should prefer single over double quotes in Python. Should you?


是的, 其实有差别,不过,可以忽略


Polars is becoming a popular alternative to Pandas. This article compares the two and shows you a path to Polars.


关键是兼容 Jupyter 之类嘛?


Inspired by the Zen of Python and similar lists, this is list of Zen Proverbs for programming.



20 条偈语,有关构建更好的软件, 适用一切语言/技术桟:

Optimize for simplicity first
Write code for humans, not computers
Reading is more important than writing
Any style is fine, as long as its black
There should be one way to do it, but seriously this time
Hide the sharp knives
Changing the rules is better than adding exceptions
Libraries are better than frameworks
Transitive dependencies are a problem
Dynamic runtime dependencies are a bigger problem
API surface area is a liability
Returning early is a good thing
Use more plain text
Compiler errors are better than runtime errors
Runtime errors are better than bugs
Tooling is better than documentation
Documentation is better than nothing
Configuration sucks, but so does convention
The cost of building a feature is its smallest cost
Types are one honking great idea  lets do more of those!



Interesting Projects, Tools and Libraries, Projects & Code





在线表格化 Pandas dataframes ...



📆🐍 活动/大会

Events, MeetUp 真的是全球线下活动组织中心


❤️ Happy Pythonic ;-(大妈私人无责任播报)


Happy Pythoning!

Copyright © 2023 PyCoder’s Weekly, All rights reserved.



开始有小伙伴加入承担 pythonisa 周刊的翻译, 从来没提醒过, 可就这么默默坚持下来了...


[皱眉]每周新闻资讯 怎么能错过 
    what f**k 还能这样玩? 还有这东西?

无法同意更多... 很多社区贡献看起来辛苦, 其实受益最多的, 就是主动承担者也.

好文笔,感叹号年度配额: 0/3



(邮件列表地址, 当成正常邮件发送邮件就好, 不用注册, 不用翻越...)


就是四处 是也乎,( ̄▽ ̄) 的那个大妈:

私自嗯哼: ZoomQuiet (订阅号: ZoomQuiet42)
公开课程: 蟒营 (订阅号: Mainium)
历史吐糟: Chaos42 (订阅号 PythoniCamp)

as 创始组织者:
    PyChina (订阅号: PyChinaOrg)
        GDG珠海 (订阅号: GDG-ZhuHai)
        TFUG珠海 (订阅号: ZH_TFUG)


大妈的多重宇宙 - YouTube

点击注册~> 获得 100$ 体验券: DigitalOcean Referral Badge

订阅 substack 体验古早写作:
Zoom.Quiet’s Chaos42 | Substack

关注公众号, 持续获得相关各种嗯哼:


**2021.01.11** 因大妈再次创业暂停定期开设, 转换为预约触发:
  • + 任何问题, 随时邮件提问可也: