Skip to Content
Python 技術手冊 第三版
book

Python 技術手冊 第三版

by lex Martelli, Anna Martelli Ravenscroft, Steve Holden
January 2018
Intermediate to advanced
856 pages
17h 17m
Chinese
GoTop Information, Inc.
Content preview from Python 技術手冊 第三版
Python C API 擴充 Python
|
755
欄位
tp_flags
是一個
long
,其位元決定了你型別結構(type struct)的
確切布局(layout),主要是為了回溯相容性。將此欄位設為
Py_TPFLAGS_
DEFAULT
來表示你正在定義一個正常的現代型別。如果你的型別支援環狀
廢物回收(cyclic garbage collection),就將
tp_flags
設為
Py_TPFLAGS_
DEFAULT|Py_TPFLAGS_HAVE_GC
。如果你型別的實體含有的
PyObject*
欄位可
能指向任意的物件並形成參考迴圈(reference loop)的一部分,那麼你的
型別就應該支援環狀廢物回收。要支援環狀廢物回收,新增
Py_TPFLAGS_
HAVE_GC
到欄位
tp_flags
是不夠的,你還必須提供適當的函式,由插
tp_traverse
tp_clear
表示,並以環狀廢物回收器(cyclic garbage
collector)適當地註冊或註銷你的實體。支援環狀廢物回收是進階的主
題,我們不會在本書中進一步涵蓋,請參閱線上說明文件(
https://docs.
python.org/3/c-api/gcsupport.html
)。同樣地,我們也不涵蓋支援弱參考
weak references)這種進階主題,線上說明文件已有涵蓋(
https://docs.
python.org/3/extending/newtypes.html#weakref-support
)。
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

利用 Python 进行数据分析(原书第2版)

利用 Python 进行数据分析(原书第2版)

Wes McKinney

Publisher Resources

ISBN: 9789864766819