Python 周报,提供有价值的 Python 及行业相关信息。
如果你发现了有价值的信息、文章和工具等,可以到 Issues 里提给我,记得写上推荐的理由。也欢迎提出意见和建议。
文章和教程
DeepMind: At Home With AI
由 DeepMind 科学家和工程师策划的教育资源清单,供有兴趣学习更多有关人工智能,机器学习和其他相关主题的学生使用。
Python 模式匹配:Guard 和 or 模式可能无法按照你期望的方式进行交互
PEP 622 建议向 Python 添加模式匹配构造。模式匹配允许程序员使用镜像构造语法的语法来解构数据。该建议使 Python 与 Haskell,OCaml 和 Rust 等许多其他现代编程语言保持一致。但是,提案中包含的两个功能(或模式和防护)可能以令人惊讶的方式进行交互──有关与 OCaml(一种同时具有模式和防护的语言)相关的交互作用,请参见本白皮书。
你可以在以下 cpython 分支中试用此 PEP 的正在进行中的实现:https://github.com/brandtbucher/cpython/tree/patma。
在本文的其余部分中,我将简要概述模式匹配,定义或模式和防护,并展示在 Python 上下文中令人惊讶的行为。
Python函数调用如何增加内存使用量
与 C 之类的语言相比,Python 的优点之一就你不必担心在程序执行过程中如何释放内存。但是有时候,Python 的内存管理无法按你期望的方式工作。
Python 的 reduce()
:从实用风格到 Pythonic 风格
Python 的 reduce()
是一种实现称为折叠或归约的数学技术的函数。当你需要将函数应用于可迭代对象并将其缩减为单个累加值时,reduce()
很有用。 Python的 reduce()
在具有功能编程背景的开发人员中很流行,但是 Python 提供了更多功能。
在本教程中,你将学习 reduce()
的工作方式以及如何有效使用它。你还将学习一些替代 Python 工具,这些工具比 reduce()
更具 Python 风格,可读性和效率。
在本教程中,你将学习:
- Python 的
reduce()
的工作方式 - 一些更常见的 reduce 用例
- 如何使用
reduce()
解决这些用例 - 有哪些替代的 Python 工具可用来解决这些相同的用例
有了这些知识,你就可以决定在解决 Python 中的缩小或折叠问题时要使用哪些工具。
为了更好地了解 Python 的 reduce()
,事先了解如何使用 Python 可迭代对象,特别是如何使用 for 循环遍历它们,将很有帮助。
关注我们
RSS 订阅:PythonWeekly RSS