首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《CPython Internals》阅读笔记:p285-p328

《CPython Internals》学习第 15天,p285-p328  总结,总计 44 页。

一、技术总结

1.shallow comparison

p285, In Objects object.c, the base implementation of the object type is written in pure C code. There are some concrete implementations of basic logic, like shallow comparisons(《CPython Internals》第285页)。

shallow 和 deep这两个词常见于 copy(shallow copy, deep copy) 和 comparison(shallow comparison, deep comparison) 操作中。

但是个人觉得从字面意思不好理解。示例:TBD。

2.dunder method

All these functions can be overridden in a custom object by implementing dunder methods on a Python object(《CPython Internals》第286页)。

看到 dunder methods, 一下子没反应过来什么样的方法叫 dunder methods, dunder 是什么意思?查了下,dunder是 double under的缩写,其实是为了发音(pronunce)方便, 由 Mark Jackson提出:

An awkward thing about programming in Python: there are lots of double underscores. [snip] My problem with the double underscore is that it's hard to say. How do you pronounceinit? "underscore underscore init underscore underscore"? "under under init under under"? Just plain "init" seems to leave out something important. I have a solution: double underscore should be pronounced "dunder". Soinitis "dunder init dunder", or just "dunder init".

dunder method 也称为 magic method 或者 special method。

二、英语总结(生词:2)

无。

关于英语的注解同步更新汇总到 https://github.com/codists/English-In-CS-Books 仓库。

三、其它

无。

四、参考资料

1. 编程

2. 英语

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O1LpapHF6Mjgotcb7sw4NuSQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券