Python之禅作者Tim Peters去世,Timsort算法仍在运行

资讯 腾讯网 作者:腾讯网 全文 3457 字 · 约 9 分钟读完

程浅 发自 凹非寺 量子位 | 公众号QbitAI 学过Python的朋友知道,当你输入import this时,会看到这样一首19行诗。 「优美胜于丑陋,显式胜于隐式....

学过Python的人都知道,敲下import this,屏幕上会出现一首19行的诗。

「优美胜于丑陋,显式胜于隐式,简单胜于复杂……」这19句箴言把编程之美说透了,后来被人称作《Python之禅》。

Python之父Guido van Rossum刚刚宣布,这首诗的作者Tim Peters已经离世。

Guido van Rossum说:「在《Python之禅》之前,他就已经是我的导师,也是这门语言的共同设计者。」

Tim发明的算法,此刻仍在无数设备上运行

默哀!

有人说过:「Tim是继Guido之后Python的第二个真正意义上的用户。」

这话不假。早在《Python之禅》问世之前,Tim就已经是Python最早期的核心开发者之一,包括Guido在内的很多人都受到他的影响。他离世的消息传开后,Python社区的核心开发者们纷纷悼念。

Python Web框架Pyramid的主要作者Chris McDonough写了一篇长文追忆Tim。

Chris McDonough写道,Guido非常依赖Tim……当他不再担任日常核心开发人员之后,Python的复杂性急剧上升绝非偶然。

在Chris McDonough笔下,Tim的文字幽默、友善、积极得恰到好处,还带着一点狡黠的黑色幽默。

核心开发者Chris Angelico回忆,自己跟Tim讨论过数不清的技术问题:「他从不把你当傻瓜,也不会随便否定你的疑问,总是认真回答、耐心解释。」

核心开发者Neil Schemenauer感慨,Tim花掉了数以千计的小时去帮助别的开发者,既不图钱,也不图个人荣誉。

Neil Schemenauer还引用《马太福音》里的一句话来形容Tim。

凭着他们的果子,就可以认出他们来。

这句话再准确不过。Tim走了,他的果子已经结满全世界,「任何在1995年至2010年间启动的Python项目都带有Tim的文化印记。」

这些成果里最出名的是Timsort排序算法。

没错,Timsort里的Tim,指的就是Tim Peters本人。

2002年,Tim为Python设计出这套排序算法。它能利用数据中已有的顺序高效完成排序,处理现实世界里那些部分有序的数据尤其拿手。

再后来,这套算法走出Python,被Java、Android等平台采用。

Tim留下的好东西还有很多。比如doctest,把文档里的代码示例直接拿来跑测试,检查示例写得对不对。

还有difflib,用来比较两段文本的差异,找出哪些内容被增加、删除或修改。

除此之外,Python底层的内存管理、垃圾回收、字典实现等机制里,都能看到Tim的印记。Guido回忆,Tim接触Python没多久,就说服自己支持整数(int)与浮点数(float)的混合运算。

此后多少年,Tim一直在深深影响着他。

Tim Peters已经离开,但他写下的那19句箴言和那些算法,还留在无数开发者的日常里。

Tim与Python的结缘往事

1952年,Tim Peters在美国威斯康星州出生。在成为Python社区传奇之前,他做过超级计算机的编译器开发,也参与过Dragon Systems的语音识别软件研发。

△图源openbookproject

1991年,朋友给Tim发来一封邮件,介绍了一门刚问世不久的编程语言——Python。

他很快来了兴趣,与发明者Guido通起信来,一边试用,一边讨论这门语言该怎么设计。

那时候,Python还停留在0.9.1版本。

此后,他一头扎进了Python的开发工作。

在当时的开发者社区里,Tim的名气越来越大,逐渐成了传奇人物。

原因是,不管别人提的问题多复杂、多小白,他都能回上一封长篇、耐心又细致的邮件。

回答得又多又快又好,他因此得了个外号:Timbot,意思是Tim牌机器人。

△图源pycon博客

1998年,Python核心开发者Barry Warsaw甚至在“Tim大阴谋论起源”的讨论里专门写了一封邮件,标题就叫《关于Tim的真相》。

那封邮件写道,众人所知的Tim Peters压根没有这个人。「那个Tim,说到底不过是一套年头很久的AI程序,专门用来自动翻查邮件列表、回复开发者提问。」

△《关于Tim的真相》邮件翻译

邮件接着写道:不然的话你们自己想想,你们之中有谁真的见过他吗?当然了,Guido肯定说自己见过,但我没看见任何证据。

△《关于Tim的真相》邮件翻译

正是在这样的社区氛围中,《Python之禅》慢慢酝酿成型。

1999年6月,Python社区又吵起来了。

有开发者抱怨,大家整天忙着争论Python该怎么改,却很少讨论怎么把这门语言用好。

于是有人提议,不如请Guido和Tim一起写份《The Python Way》,用十几条简短规则,把Python的设计哲学总结出来。

这次Tim又是光速回应。他表示,「这种事情当然应该交给Guido来做啦,不过嘛,如果是Guido,他大概会从下面这个提纲开始。」

优美胜于丑陋。

显式胜于隐式。

简单胜于复杂。

……

19条箴言,Tim一口气写完了。

数目为什么不凑个整数?按Tim的说法,最后一条得留给Guido亲自落笔。

所以直到今天,也没人知道Tim原本设想的第20条会是什么样。有人猜是“留白很重要”(Significant whitespace),也有人猜:第20条原则就是“没有第20条原则”。

△1999年6月4日《The Python Way》原始邮件

△中文翻译供参考

2020年,Barry Warsaw问起这首诗是怎么写出来的。Tim的回答很随意:当时电视里正播职业摔跤,他趁着广告时间,啃着火腿三明治就把诗写下了。

后来Barry Warsaw把这首诗谱成了歌,吉他自己弹,贝斯、键盘也一并包办,还亲自上阵唱了一遍。

前几年有个刚学Python的人提问:「给线程传参数时,括号里明明只有一个变量,后面为什么非加一个逗号?」

Tim本人出来回复,讲了单元素元组的语法。讲完还不算完,他又向Python官方提了文档改进请求,想让这个问题以后能被说清楚。

提问的人连声道谢。

Tim反过来宽慰对方:单元素元组这种写法,本来就是Python里最怪的语法之一,不必担心天天碰上这种古怪东西。

大家喜欢Tim,不是没来由的。

另有一回,同事找Tim帮忙,说有个错误每运行六次才冒出来一次。

Tim笑着反问:「那你有在源代码里搜索过6吗?」

三十多年里,Tim一直活跃在社区,大大小小的疑难杂症他都帮着处理。

到2024年,情况变了。Python软件基金会修改章程,加上社区治理上的分歧,他与当时的管理者爆发了激烈争论。

再往后,Python指导委员会认定他在相关讨论中多次违反社区行为准则,核心开发者资格被暂停三个月,论坛账号也受到限制。

这事在社区里炸开了锅。

Tim不认可处罚依据和处理程序,专门开了个公开博客,一条一条回应指控。博客页脚一直留着那句话:「Question everything. Love everyone.」

质疑一切,爱所有人。

三个月后,Tim回到Python社区,照旧参与技术讨论。

2026年7月8日,他在Python社区留下的最后一篇帖子,聊的仍是优先队列、数据结构和路径搜索算法。

那篇长长的技术分析收尾时,他感叹,「说了这么多,无非是想说,现实世界远比我们期待的那些简洁漂亮的抽象模型更加复杂。」

七天后,Tim Peters离开了这个世界。

△Tim的名片显示,“用户已不再活跃”。

One More Thing

Tim Peters离世后,不少程序员又把《Python之禅》翻了出来。Hacker News上有人说,自己早把它打印出来贴在办公室墙上,大家几乎每周都会引用一次。按他的说法,「最初只是个玩笑,后来却成了我们文化中相当重要的一部分。」

另一位网友回忆,刚学编程那会儿就读过《Python之禅》,当时没看懂。之后这些年里,隔一阵子重读一遍,总能发现自己又多理解了几句。

讨论没有停在怀念文章本身,很多人开始念叨当年那个Python。有网友直接吐槽:「应该有一种,最好只有一种,显而易见的解决方法」这句话放到今天的Python身上,已经不太适用了。

也有人怀念起那时的Python社区——开发者们靠邮件列表交流、争论、打趣。而Tim总是肯花大把时间,认真回答素不相识的程序员提的问题。

有网友说:

我很大程度上,是通过观察Tim,才学会了如何在互联网上与人相处。

现在Tim走了,但或许,他给这个世界的爱还在延续……

本文由本站编辑组整理与排版,内容基于公开信息核实后归纳发布,与文中提及的产品、公司无隶属关系。我们持续跟踪 AI 领域的模型、产品与行业动态,力求信息准确、表述清晰;文中涉及的名称、价格与功能细节可能随官方调整而变化,请以官方最新说明为准。如发现疏漏或表述有误,欢迎通过站内渠道反馈指正。

相关推荐 按相关度与热度排序

全部资讯 →
  1. 阿里云把青奥会云平台留给塞内加尔:奥运史上首次,赛后转为主权云

    作者 | 白默11 月 13 日,2026 年达喀尔青年奥林匹克运动会将在塞内加尔闭幕,这是奥林匹克运动首次进入非洲。中国代表团也派出了 66 名运动员参赛。把奥运带到非洲大陆,是本届青奥会写下的第一项历史。另一项,藏在聚光灯之外,中国企业为塞内加尔打造了奥运史上首个专有云底座。奥运会结束后,支撑它的云会怎么样?过去.

    来源 腾讯网
  2. 今日宜休发布ISHO Ring戒指与iFlow温控系统:AI睡眠生意的新打法

    睡眠硬件的竞争开始从「看见发生了什么」,转向「知道为什么发生,并尝试改变结果」。作者 | 李威(北京)「你们该不会是要做智商税产品吧?」王腾创办今日宜休后,经常被问到这个问题。带着这个问题,他买过各种睡眠监测设备,也体验过枕头、被子和脑电类产品,最后的感受是:「有些对我还蛮好的,有些确实效果不是那么大。」睡眠需求是真实

    来源 腾讯网
  3. 第七届中国人工智能大赛在厦门收官:138支团队获奖,10个赛项完赛

    中新网厦门11月13日电 (记者 林永传)第七届中国人工智能大赛成果发布会12日在厦门成果举行。国家有关部门和厦门市有关领导出席成果发布会并致辞,院士专家、科研院所、企业代表等约400人参加活动。图为发布会现场。厦门市工业和信息化局 供图 本届大赛由国家互联网信息办公室、公安部指导,厦门市人民政府主办。大赛自启动...

    来源 腾讯网
  4. AI进家门前的6条约定:老人想教机器人唱歌,孩子用它讲霸凌遭遇

    在过去一年,AI 在许多家庭的角色,早已从那个只会在春晚跳舞的机械演员,变成了家庭成员的“贴心伙伴”。但或许,面对这位新伙伴,你也有过类似上文提到的一些焦虑时刻。其实,这样的不安在更长的媒介史上有迹可循。正如中国社会科学院新闻与传播研究所研究员,中国社会科学院大学特聘教授、博导卜卫老师所说,我们有着跨...

    来源 腾讯网
向下滚动自动加载更多