Python C-API: how to define nested classes?

88888 Dihedral dihedral88888 at googlemail.com
Thu May 16 17:22:42 EDT 2013


Serge WEINSTOCK於 2013年5月16日星期四UTC+8下午4時55分07秒寫道:
> Hi,
> 
>  
> 
> I'm currently writing a C extension module for python using the "raw" C-API. I would like to be able to define "nested classes" like in the following python code
> 
>  
> 
> ============================================================
> 
> class A:
> 
>     class B:
> 
>         def __init__(self):
> 
>             self.i = 2
> 
>     def __init__(self):
> 
>         self.b = A.B()
> 
> a = A()
> 
> b = A.B()
> 
> print(a.b.i)
> 
> print(b.i)
> 
> ============================================================
> 
>  
> 
> How can I create such nested class with the C-API?
> 
>  
> 
> Serge WEINSTOCK
> 
>  
> 
> 
> 
> 
> ___________________________________________________________
> 
> This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorised copying, disclosure or distribution of the material in this e-mail is prohibited.
> 
> 
> Please refer to http://www.bnpparibas.co.uk/en/email-disclaimer/ for additional disclosures.

The nested class is just defining the scope of the nested 
class object that can be  used solely in all outer proper 
classes.

It is not very useful in a language which supports 
dynamical run-time attribute binding in the instance level.

in the outer 



More information about the Python-list mailing list