摘要:今年二月初,我偶然看到了一条推特: 《流畅的Python》一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之一。我在最早写“Python猫荐书系列”时,就想推荐它,但又觉得好东西应该留到最后,所以一直拖到了现在…… 如 阅读全文
posted @ 2020-10-22 22:46 豌豆花下猫 阅读(465) 评论(1) 推荐(0) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在Python猫的上一篇文章中,我们对比了两种创建列表的方法,即字面量用法 [] 与内置类型用法 list(),进而分析出它们在运行速度上的差异。 在分析为什么 list() 会更慢的时候,文中说到它需要经过名称查找与函数调用两个步骤,那么,这就引 阅读全文
posted @ 2020-10-18 17:13 豌豆花下猫 阅读(153) 评论(0) 推荐(3) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在日常使用 Python 时,我们经常需要创建一个列表,相信大家都很熟练了吧? # 方法一:使用成对的方括号语法 list_a = [] # 方法二:使用内置的 list() list_b = list() 上面的两种写法,你经常使用哪一个呢?是否 阅读全文
posted @ 2020-10-14 20:15 豌豆花下猫 阅读(269) 评论(1) 推荐(0) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在这篇文章里,我们会聊一聊为什么 Python 决定不支持 switch 语句。 为什么想要聊这个话题呢? 主要是因为 switch 在其它语言中太常见了,而 Python 却不支持,这样的独特性本身就值得关注,而回答这个问题,也能更加看清 Pyt 阅读全文
posted @ 2020-10-08 11:27 豌豆花下猫 阅读(492) 评论(3) 推荐(1) 编辑
摘要:2018 年国庆节前,我开通了微信公众号“Python猫”,写下了“喵星来客”系列的第一篇文章。 2020 年国庆节前,我累计创作和翻译了 130+ Python 技术文章。 时光匆匆,两年光阴很快就过去了。 在这个特殊的时间节点上,我感觉有必要把创作的内容做一下梳理,于是,也就诞生出了这一本自制的 阅读全文
posted @ 2020-10-06 15:11 豌豆花下猫 阅读(73) 评论(0) 推荐(0) 编辑
摘要:Python 支持 lambda 匿名函数,其扩展的 BNF 表示法是lambda_expr ::= "lambda" [parameter_list] ":" expression ,也就是 lambda 参数序列:表达式。 这是一种便捷的函数定义方式,若翻译成我们熟知的函数形式,会是这个样子: 阅读全文
posted @ 2020-09-20 21:58 豌豆花下猫 阅读(504) 评论(0) 推荐(0) 编辑
摘要:花下猫语: 本篇译文仍是 Brett 大佬的“Python语法糖”系列,他在演示“-=”操作的实现时,竟发现 CPython 的一个 bug,顺手就修复了,这才是大佬…… 原题 | Unravelling augmented arithmetic assignment 作者 | Brett Cann 阅读全文
posted @ 2020-09-10 22:35 豌豆花下猫 阅读(195) 评论(0) 推荐(0) 编辑
摘要:原题 | Unravelling binary arithmetic operations in Python 作者 | Brett Cannon 译者 | 豌豆花下猫(“Python猫”公众号作者) 声明 | 本翻译是出于交流学习的目的,基于 CC BY-NC-SA 4.0 授权协议。为便于阅读, 阅读全文
posted @ 2020-09-09 19:53 豌豆花下猫 阅读(194) 评论(0) 推荐(0) 编辑
摘要:花下猫语:在 Python 中,不同类型的数字可以直接做算术运算,并不需要作显式的类型转换。但是,它的“隐式类型转换”可能跟其它语言不同,因为 Python 中的数字是一种特殊的对象,派生自同一个抽象基类。在上一篇文章 中,我们讨论到了 Python 数字的运算,然后我想探究“Python 的数字对 阅读全文
posted @ 2020-09-05 16:13 豌豆花下猫 阅读(249) 评论(0) 推荐(0) 编辑
摘要:0、前言 我在上一篇文章中分析了 为什么 Python 没有 void 类型 的话题,在文章发布后,有读者跟我讨论起了另一个关于类型的问题,但是,我们很快就出现了重大分歧。 我们主要的分歧就在于:Python 到底是不是强类型语言? 我认为是,而他认为不是。 他写了一篇很长的文章《谁告诉的你们Pyt 阅读全文
posted @ 2020-08-31 21:21 豌豆花下猫 阅读(539) 评论(0) 推荐(0) 编辑
摘要:void 是编程语言中最常见的关键字之一,从字面上理解,它是“空的、空集、空白”的意思,最常用于 表示函数的一种返回值类型。 维基百科上有一个定义: The void type, in several programming languages derived from C and Algol68, 阅读全文
posted @ 2020-08-21 23:35 豌豆花下猫 阅读(362) 评论(0) 推荐(0) 编辑
摘要:Python 有一项默认的做法,很多编程语言都没有——它的所有函数都会有一个返回值,不管你有没有写 return 语句。 本文出自“Python为什么”系列,在正式开始之前,我们就用之前讨论过的 pass语句 和 ...对象 作为例子,看看 Python 的函数是怎样“无中生有”的: 可以看出,我们 阅读全文
posted @ 2020-08-15 15:31 豌豆花下猫 阅读(360) 评论(0) 推荐(0) 编辑
摘要:Python 中有没有办法通过类方法找到其所属的类? 这个问题看起来不容易理解,我可以给出一个例子: class Test: @xxx def foo(self): pass 现在有一个类和一个类方法,其中类方法上有一个装饰器。 我们的问题就是要在装饰器代码中动态地获得 Test 这个类(类名+类对 阅读全文
posted @ 2020-08-14 20:22 豌豆花下猫 阅读(82) 评论(0) 推荐(0) 编辑
摘要:花下猫语:在上一篇《Python 为什么能支持任意的真值判断? 》文章中,我们分析了 Python 在真值判断时的底层实现,可以看出 Python 在对待布尔值时,采用了比较宽泛的态度。官方对此是怎么考虑的呢? 下面的文章是我刚翻译的 PEP-285,作者是 Python 之父 Guido van 阅读全文
posted @ 2020-08-12 14:09 豌豆花下猫 阅读(413) 评论(0) 推荐(0) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 Python 在涉及真值判断(Truth Value Testing)时,语法很简便。 比如,在判断某个对象是否不为 None 时,或者判断容器对象是否不为空时,并不需要显示地写出判断条件,只需要在 if 或 while 关键字后面直接写上该对象即 阅读全文
posted @ 2020-08-08 20:02 豌豆花下猫 阅读(216) 评论(0) 推荐(1) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在写上一篇《Python 为什么要有 pass 语句?》时,我想到一种特别的写法,很多人会把它当成 pass 语句的替代。在文章发布后,果然有三条留言提及了它。 所谓特别的写法就是下面这个: # 用 ... 替代 pass def foo(): . 阅读全文
posted @ 2020-08-01 21:47 豌豆花下猫 阅读(233) 评论(0) 推荐(1) 编辑
摘要:花下猫语: 在我们读者群里,最近出现了比较多关于 C++ 的讨论,还兴起了一股学习 C++ 的风气。樱雨楼小姐姐对 C++ 的模板深有研究,系统地梳理成了一篇近 4 万字的文章!本文是上篇,分享给大家~ 樱雨楼 | 原创作者 豌豆花下猫 | 编辑 0 论抽象——前言 故事要从一个看起来非常简单的功能 阅读全文
posted @ 2020-07-30 22:13 豌豆花下猫 阅读(346) 评论(2) 推荐(2) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 关于 Python 中的pass语句,它似乎很简单(只有 4 个字母),即使是没有任何编程经验的初学者也能很快地掌握它的用法。 官方文档 的介绍十分简单,下面的三个例子可以让我们快速地了解到如何使用它: 简单而言,pass 是一种空操作(null 阅读全文
posted @ 2020-07-27 19:36 豌豆花下猫 阅读(274) 评论(0) 推荐(0) 编辑
摘要:我今天在某博客平台上看到了一则留言: 非常意外!不会只是巧合吧? 我马上就点开链接去核实,然后发现那篇文章是全文翻译了我之前写的文章,而且该作者还翻译了另外的两篇。 如果读者了解我,应该知道我也翻译过不少文章,比如有 PEP系列 、Guido的解析器系列 、Flask 作者 Armin Ronach 阅读全文
posted @ 2020-07-20 22:45 豌豆花下猫 阅读(133) 评论(0) 推荐(0) 编辑
摘要:关于编程语言中的注释,其重要性基本上已为大家所共识。 然而关于注释的规范,这个话题就像我们之前聊过的缩进、终止符和命名方式一样,众口难调。 注释符通常可分为两种,即行注释与块注释(inline/block),它们在不同的编程语言中的符号可谓让人眼花缭乱。 比如行注释符,它至少有以下的 17 种之多( 阅读全文
posted @ 2020-07-19 19:04 豌豆花下猫 阅读(277) 评论(0) 推荐(1) 编辑
摘要:今年二月初,我偶然看到了一条推特: 《流畅的Python》一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之一。我在最早写“Python猫荐书系列”时,就想推荐它,但又觉得好东西应该留到最后,所以一直拖到了现在…… 如 阅读全文
posted @ 2020-10-22 22:46 豌豆花下猫 阅读(465) 评论(1) 推荐(0) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在Python猫的上一篇文章中,我们对比了两种创建列表的方法,即字面量用法 [] 与内置类型用法 list(),进而分析出它们在运行速度上的差异。 在分析为什么 list() 会更慢的时候,文中说到它需要经过名称查找与函数调用两个步骤,那么,这就引 阅读全文
posted @ 2020-10-18 17:13 豌豆花下猫 阅读(153) 评论(0) 推荐(3) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在日常使用 Python 时,我们经常需要创建一个列表,相信大家都很熟练了吧? # 方法一:使用成对的方括号语法 list_a = [] # 方法二:使用内置的 list() list_b = list() 上面的两种写法,你经常使用哪一个呢?是否 阅读全文
posted @ 2020-10-14 20:15 豌豆花下猫 阅读(269) 评论(1) 推荐(0) 编辑
摘要:本文出自“Python为什么”系列,请查看全部文章 在这篇文章里,我们会聊一聊为什么 Python 决定不支持 switch 语句。 为什么想要聊这个话题呢? 主要是因为 switch 在其它语言中太常见了,而 Python 却不支持,这样的独特性本身就值得关注,而回答这个问题,也能更加看清 Pyt 阅读全文
posted @ 2020-10-08 11:27 豌豆花下猫 阅读(492) 评论(3) 推荐(1) 编辑
摘要:2018 年国庆节前,我开通了微信公众号“Python猫”,写下了“喵星来客”系列的第一篇文章。 2020 年国庆节前,我累计创作和翻译了 130+ Python 技术文章。 时光匆匆,两年光阴很快就过去了。 在这个特殊的时间节点上,我感觉有必要把创作的内容做一下梳理,于是,也就诞生出了这一本自制的 阅读全文
posted @ 2020-10-06 15:11 豌豆花下猫 阅读(73) 评论(0) 推荐(0) 编辑
摘要:Python 支持 lambda 匿名函数,其扩展的 BNF 表示法是lambda_expr ::= "lambda" [parameter_list] ":" expression ,也就是 lambda 参数序列:表达式。 这是一种便捷的函数定义方式,若翻译成我们熟知的函数形式,会是这个样子: 阅读全文
posted @ 2020-09-20 21:58 豌豆花下猫 阅读(504) 评论(0) 推荐(0) 编辑
摘要:花下猫语: 本篇译文仍是 Brett 大佬的“Python语法糖”系列,他在演示“-=”操作的实现时,竟发现 CPython 的一个 bug,顺手就修复了,这才是大佬…… 原题 | Unravelling augmented arithmetic assignment 作者 | Brett Cann 阅读全文
posted @ 2020-09-10 22:35 豌豆花下猫 阅读(195) 评论(0) 推荐(0) 编辑
摘要:原题 | Unravelling binary arithmetic operations in Python 作者 | Brett Cannon 译者 | 豌豆花下猫(“Python猫”公众号作者) 声明 | 本翻译是出于交流学习的目的,基于 CC BY-NC-SA 4.0 授权协议。为便于阅读, 阅读全文
posted @ 2020-09-09 19:53 豌豆花下猫 阅读(194) 评论(0) 推荐(0) 编辑
摘要:花下猫语:在 Python 中,不同类型的数字可以直接做算术运算,并不需要作显式的类型转换。但是,它的“隐式类型转换”可能跟其它语言不同,因为 Python 中的数字是一种特殊的对象,派生自同一个抽象基类。在上一篇文章 中,我们讨论到了 Python 数字的运算,然后我想探究“Python 的数字对 阅读全文
posted @ 2020-09-05 16:13 豌豆花下猫 阅读(249) 评论(0) 推荐(0) 编辑
摘要:0、前言 我在上一篇文章中分析了 为什么 Python 没有 void 类型 的话题,在文章发布后,有读者跟我讨论起了另一个关于类型的问题,但是,我们很快就出现了重大分歧。 我们主要的分歧就在于:Python 到底是不是强类型语言? 我认为是,而他认为不是。 他写了一篇很长的文章《谁告诉的你们Pyt 阅读全文
posted @ 2020-08-31 21:21 豌豆花下猫 阅读(539) 评论(0) 推荐(0) 编辑