原文: PyCoder's Weekly - Issue #359


Learn how to write high-quality, readable code by using the Python style guidelines laid out in PEP 8. Following these guidelines helps you make a great impression when sharing your work with potential employers and team mates. Learn how to make your code PEP 8 compliant with these bite-sized lessons.


没那么简单, 团队习惯兼容的配置又能有用, 太难 )

The Single Responsibility Principle (or SRP) is an important concept in software development. The main idea of this concept is: all pieces of software must have only a single responsibility. Nikita's article guides you through the complex process of writing simple code with some hands-on refactoring examples. You'll use callable classes, SRP, dependency injection, and composition to write simple Python code. Nice read!


Python 是个橡皮泥, 嘦愿意, 总是能嗯哼成喜欢的样子...


How to add tests, CI, code coverage, and more. Very detailed writeup.



Install Black
Create .pycache
Install pytest
Create Tests
Sign up for Travis CI and Configure
Create .travis.yaml
Test Travis CI
Add Code Coverage
Add Coveralls
Add PyUp



Learn how to detect liveness with OpenCV, Deep Learning, and Keras. You'll learn how to detect fake faces and perform anti-face spoofing in face recognition systems with OpenCV.

In this step-by-step tutorial, you'll learn how to install multiple Python versions and switch between them with ease, including project-specific virtual environments, even if you don't have sudo access with pyenv.


其实 PyEnv 比 pipenv 灵活就在, 不仅仅是将运行时版本进行了管理, 而且可以简便的将 Python 版本环境, 工程模块依赖环境, 在本地自由结合到任意工程目录上.

就是缺少一个一键将当前环境所有依赖模块冻结为压缩文件, 并能简洁的传送到远方主机, 一键完成再安装配置的工具...

毕竟, 总是有些模块是依赖外部 GCC 之类工具现场编译的.


"The Python ecosystem has been steadily growing [since 2005]. After the first few years of hyper growth as PyPI gained near-full adoption in the Python community, the number of packages actively developed each year—meaning they had at least one release or new distribution uploaded—has increased 28% to 48% every year."


每年 28%~48% 的增长, 比中国 GDP 高, 但是远远小于 node.js 的.




"What is the Pythonic way to handle the situation where if a condition exists the loop should be executed, but if it does not something else should be done?"




"I was clicking around in PyCharm and noticed that the this module in CPython violates basically all of these principles."


Articles, Tutorials and Talks

You can make any Python object callable by adding a call method to it. Like operator overloading this seems like a nifty idea at first... but is it really? Moshe's article goes over some use cases and examples to discuss whether making objects callable is a good idea or not.

How to merge different Dataframes into a single dataframe using Pandas' DataFrame.merge() function. Merging is a big topic, so this part focuses on merging dataframes using common columns as Join Key and joining using Inner Join, Right Join, Left Join and Outer Join.




A simple explanation of how neural networks work and how to implement one from scratch in Python. Nice illustrations!


华人? Princeton University 19 级...


还是大堆公式, 以及相似的图谱, 并没减少理解难度...


An intro to module loaders and finders so you can "hack" Python's import system for fun and profit.





叕一个模块管理机制...可以说当年 老爹 没想明白的事儿, 至今也没人整明白.


"In other languages, e.g., Java, explicit dependency injection is part of daily business. Python projects however very rarely make use of this technique. I'd like to make a case for why it might be useful to rethink this approach."

Update from the Conda team regarding Conda's speed, what they're working on, and what performance improvements are coming down the pike.


不同 Jupter 全力在分布式 web 界面上支持多种语言, Conda 找到了自己的发展道路 -> 在本地运行时环境上 给开发者 一致性体验.


Using Python to estimate the similarity of two text documents using the Doc2Vec module.


Interesting Projects, Tools and Libraries

And not just that, it's a full Python scientific stack, compiled to WebAssembly for running in the browser. More info here.


构建失败中... )

A GitHub app to automatically review Python code style over Pull Requests.


绝对是 M$ 有銭任性而追加的嗯哼...



依赖: wget, chromium, and youtube-dl )


非常 Bottle


📆🐍 活动/大会



❤️ Happy Pythonic!



  • 190313 Zoom.Quiet(大妈) 用时 42 分钟 完成快译
  • 190313 Zoom.Quiet(大妈) 用时 17 分钟 完成格式转抄.


蟒营®编程思维提高班 Python版/第13期 正在报名

精品小班/ 永久答疑

扫描报名: 101camp13py

蟒营®式 原创课程


官网: py.101.camp

Reactivate Joy by Self-teching with You


关注公众号, 持续获得相关各种咨询:


任何问题, 随时邮件提问可也: