рдкрд░рд┐рдкрддреНрд░ рд╕рдВрджрд░реНрдн рдФрд░ рдкрд░рд┐рдкрддреНрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рдмрд┐рдирд╛ рдСрдмреНрдЬреЗрдХреНрдЯ

рдХреНрд▓рд╛рд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдП рдЧрдП рд╕реАрдкреАрдереЙрди рдореЗрдВ рдПрдХ рд╡рд░реНрдЧ рдХрд╛ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдПрдХ рдкрд░рд┐рдкрддреНрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рддрдВрддреНрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдХреА рдореЗрдореЛрд░реА рдлрд╝реБрдЯрдкреНрд░рд┐рдВрдЯ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ рдФрд░ рднрд╛рд░реА рд▓реЛрдб рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдореЗрдореЛрд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред


рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдХреНрдпрд╛ рдПрдХ рдореВрд▓ рд▓рд┐рдВрдХ рдЧрд┐рдирддреА рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рдлреИрд▓рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рдЖрдЗрдП рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдЬреЛ рдЙрди рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдЬрд┐рдирдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗрд╡рд▓ рд▓рд┐рдВрдХ рдЧрд┐рдирддреА рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред


рд╕реАрдкреАрдереЙрди рдореЗрдВ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛


рдкрд╛рдпрдерди рдореЗрдВ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдердорд┐рдХ рддрдВрддреНрд░ рд▓рд┐рдВрдХ рдЧрд┐рдирддреА рддрдВрддреНрд░ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рдлрд╝реАрд▓реНрдб рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд▓рд┐рдВрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рд╣реЛрддрд╛ рд╣реИред рдЬреИрд╕реЗ рд╣реА рд╕рдВрджрд░реНрдн рдХрд╛рдЙрдВрдЯрд░ рдХрд╛ рдореВрд▓реНрдп рд╢реВрдиреНрдп рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рд╡рд╕реНрддреБ рдирд╖реНрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдирд┐рдкрдЯрд╛рди рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рдкрд░рд┐рдкрддреНрд░ рд╕рдВрджрд░реНрдн рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП


lst = [] lst.append(lst) del lst 

рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕рдХреЗ рд╕рдВрджрд░реНрдн рдХрд╛ рдХрд╛рдЙрдВрдЯрд░ рд╢реВрдиреНрдп рд╕реЗ рдЕрдзрд┐рдХ рд░рд╣рддрд╛ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╛рдпрдерди рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рддрдВрддреНрд░ рд╣реИ рдЬреЛ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмреАрдЪ рд▓рд┐рдВрдХ рдЧреНрд░рд╛рдл рдореЗрдВ рдЫреЛрд░реЛрдВ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИред CPython3 рдореЗрдВ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рддрдВрддреНрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдПрдХ рдЕрдЪреНрдЫрд╛ рд▓реЗрдЦ рд╣реИ ред


рдУрд╡рд░рд╣реЗрдб рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ


рдЖрдорддреМрд░ рдкрд░, рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рддрдВрддреНрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдирд╣реАрдВ рдмрдирддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝реЗ рдХреБрдЫ рдЕрддрд┐рджреЗрдп рд╣реИрдВ:


рдЬрдм рдкреНрд░рддреНрдпреЗрдХ рдореЗрдореЛрд░реА рдХреНрд▓рд╛рд╕ рдЖрд╡рдВрдЯрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ PyGC_Head рд╣реИрдбрд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ : (рдкрд╛рдпрдерди рдореЗрдВ рдХрдо рд╕реЗ рдХрдо 24 рдмрд╛рдЗрдЯреНрд╕ <= 3.7 рдФрд░ 64-рдмрд┐рдЯ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ 3.8 рдореЗрдВ рдХрдо рд╕реЗ рдХрдо 16 рдмрд╛рдЗрдЯреНрд╕ред

рдпрджрд┐ рдЖрдк рдПрдХ рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдореЗрдореЛрд░реА рдХреА рдХрдореА рдХреА рд╕рдорд╕реНрдпрд╛ рдкреИрджрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЖрдкрдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдореЗрдореЛрд░реА рдХреА рдорд╛рддреНрд░рд╛ рд╕реАрдорд┐рдд рд╣реЛрддреА рд╣реИред


рдХреНрдпрд╛ рдХрднреА-рдХрднреА рд▓рд┐рдВрдХ рдЧрд┐рдирддреА рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рддрдВрддреНрд░ рддрдХ рдЦреБрдж рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?


рдЬрдм рдПрдХ рдЧреИрд░-рдкреБрдирд░рд╛рд╡рд░реНрддреА рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рддреЛ рдкрд░рд┐рдкрддреНрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рддрдВрддреНрд░ рдирд┐рд░рд░реНрдердХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░рдХрд╛рд░ (рд╕рдВрдЦреНрдпрд╛, рддрд╛рд░, рджрд┐рдирд╛рдВрдХ / рд╕рдордп) рдХреЗ рдорд╛рди рд╡рд╛рд▓реЗ рд░рд┐рдХреЙрд░реНрдбред рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╡рд░реНрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:


 class Point: x: int y: int 

рдпрджрд┐ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд▓рд┐рдВрдХ рдЪрдХреНрд░ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкрд╛рдпрдерди рдореЗрдВ, "рдкреИрд░ рдореЗрдВ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рд▓рд╛рдд рдорд╛рд░рдиреЗ" рд╕реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рд░реЛрдХрддрд╛ рд╣реИ:


  p = Point(0, 0) px = p 

рдлрд┐рд░ рднреА, Point рдХреНрд▓рд╛рд╕ рдХреЗ рд▓рд┐рдП, рдХреЛрдИ рднреА рдЦреБрдж рдХреЛ рд▓рд┐рдВрдХ рдЧрд┐рдирддреА рддрдВрддреНрд░ рддрдХ рд╕реАрдорд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдПрдХ рднреА рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдЪрдХреНрд░реАрдп рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорд╛рдирдХ рддрдВрддреНрд░ рдирд╣реАрдВ рд╣реИред


рдЖрдзреБрдирд┐рдХ CPython рдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдЬрдм рдХрд╕реНрдЯрдо рд╡рд░реНрдЧ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдХрд╕реНрдЯрдо рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ, рддреЛ Py_TPFLAGS_HAVE_GC рдзреНрд╡рдЬ рд╣рдореЗрд╢рд╛ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рддрдВрддреНрд░ рдореЗрдВ рд╡рд░реНрдЧ рдЙрджрд╛рд╣рд░рдг рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗред рдРрд╕реА рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП, рдЬрдм рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, PyGC_Head рд╣реЗрдбрд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ , рдФрд░ рд╡реЗ рдореЙрдирд┐рдЯрд░ рдХрд┐рдП рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВред рдпрджрд┐ Py_TPFLAGS_HAVE_GC рдзреНрд╡рдЬ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреЗрд╡рд▓ рдореВрд▓ рд▓рд┐рдВрдХ рдЧрд┐рдирддреА рддрдВрддреНрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, Py_TPFLAGS_HAVE_GC рдХрд╛ рдПрдХ рднреА рд░реАрд╕реЗрдЯ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдФрд░ рдирд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЛрд░ рд╕реАрдкреАрдереЙрди рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдФрд░ рдпрд╣ рдЕрднреА рднреА рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╣реИред


рдПрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


рд╡рд┐рдЪрд╛рд░ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рд░рд┐рдХреЙрд░реНрдбрдХреНрд▓рд╛рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдмреЗрд╕ рдХреНрд▓рд╛рд╕ dataobject рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдРрд╕реА рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдирдХреЗ Py_TPFLAGS_HAVE_GC рд╕рд░реНрдХреБрд▓рд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рдХреЗ рддрдВрддреНрд░ рдореЗрдВ рднрд╛рдЧ рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВ ( Py_TPFLAGS_HAVE_GC рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ рдФрд░, рддрджрдиреБрд╕рд╛рд░, рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд PyGC_Head рд╣реИрдбрд░ рдирд╣реАрдВ рд╣реИ)ред рдЙрдирдХреЗ рдкрд╛рд╕ рд╕реНрдореГрддрд┐ рдореЗрдВ рдареАрдХ рд╡реИрд╕рд╛ рд╣реА рдврд╛рдВрдЪрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ __slots__ рдХреЗ рд╕рд╛рде рд╡рд░реНрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рд▓реЗрдХрд┐рди PyGC_Head рдмрд┐рдирд╛:


 from recordclass import dataobject class Point(dataobject): x:int y:int >>> p = Point(1,2) >>> print(p.__sizeof__(), sys.getsizeof(p)) 32 32 

рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП, рд╣рдо __slots__ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╢реНрд░реЗрдгреА __slots__ :


 class Point: __slots__ = 'x', 'y' x:int y:int >>> p = Point(1,2) >>> print(p.__sizeof__(), sys.getsizeof(p)) 32 64 

рдЖрдХрд╛рд░ рдХрд╛ рдЕрдВрддрд░ рдмрд┐рд▓реНрдХреБрд▓ PyGC_Head рд╣реИрдбрд░ рдХреЗ рдЖрдХрд╛рд░ рдХрд╛ рд╣реИред рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╡рд╛рд▓реЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, RAM рдореЗрдВ рдЗрд╕рдХреЗ рдЯреНрд░реЗрд╕ рдХреЗ рдЖрдХрд╛рд░ рдореЗрдВ рдЗрддрдиреА рд╡реГрджреНрдзрд┐ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рд╕рдХрддреА рд╣реИред Point рдХреНрд▓рд╛рд╕ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, PyGC_Head рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЗрд╕рдХрд╛ рдЖрдХрд╛рд░ 2 рдЧреБрдирд╛ рдмрдврд╝ PyGC_Head ред


рдЗрд╕ рдЖрд╢рдп рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡рд┐рд╢реЗрд╖ рдореЗрдЯрд╛рдХреНрд▓рд╛рд╕ datatype , рдЬреЛ dataobject рдХреЗ рдЙрдк-рд╡рд░реНрдЧ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, Py_TPFLAGS_HAVE_GC рдзреНрд╡рдЬ Py_TPFLAGS_HAVE_GC , рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реАрд▓реНрдб рд╕реНрд▓реЙрдЯ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд░рд╛рд╢рд┐ рд╕реЗ tp_basicsize рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЖрдзрд╛рд░ рдЖрдХрд╛рд░ рдмрдврд╝рддрд╛ рд╣реИред рд╡рд░реНрдЧ рдШреЛрд╖рд┐рдд рд╣реЛрдиреЗ рдкрд░ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝реАрд▓реНрдб рдирд╛рдо рд╕реВрдЪреАрдмрджреНрдз рд╣реЛрддреЗ рд╣реИрдВ ( Point рдХреНрд▓рд╛рд╕ рдореЗрдВ рджреЛ: x рдФрд░ y )ред рдореЗрдЯрд╛рдЯреИрдЯрд▓рд╕ datatype рд╕реНрд▓реЙрдЯреНрд╕ tp_alloc , tp_new , tp_dealloc , tp_free рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рднреА рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдореЗрдореЛрд░реА рдореЗрдВ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдмрдирд╛рдиреЗ рдФрд░ рдирд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ __weakref__ рдФрд░ __dict__ (рд╕рд╛рде рд╣реА __slots__ рд╕рд╛рде рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг) рдХреА рдХрдореА рд╣реЛрддреА рд╣реИ ред


рдирд┐рд╖реНрдХрд░реНрд╖


рдЬреИрд╕рд╛ рдХрд┐ рдХреЛрдИ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ, рд╕реАрдкреАрдереЙрди рдореЗрдВ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдЪрдХреНрд░реАрдп рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рддрдВрддреНрд░ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬрдм рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░рд┐рдкрддреНрд░ рд▓рд┐рдВрдХ рдирд╣реАрдВ рдмрдирд╛рдПрдВрдЧреЗред рдпрд╣ PyGC_Head рд╣реИрдбрд░ рдХреЗ рдЖрдХрд╛рд░ рджреНрд╡рд╛рд░рд╛ рдореЗрдореЛрд░реА рдореЗрдВ рдЙрдирдХреЗ рдЯреНрд░реЗрд╕ рдХреЛ рдХрдо рдХрд░реЗрдЧрд╛ред

Source: https://habr.com/ru/post/hi463269/


All Articles