a quick question about namespaces

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Jay  donnell

    #1

    a quick question about namespaces

    in the code below 'print locals()' shows mc2. What is the equivalent
    way to see the namespace that mc resides in?


    class myClass:
    --def func1(self):
    ----self.mc = 1
    ----mc2 = 3
    ----print 'in myClass.func1'
    ----print 'printing locals'
    ----print locals()
    ----print

    Google mungs up the spacing so I put a - in place of spaces. Does
    anyone know how to get around this spacing issue on google groups?

  • Steven Bethard

    #2
    Re: a quick question about namespaces

    Jay donnell wrote:[color=blue]
    > in the code below 'print locals()' shows mc2. What is the equivalent
    > way to see the namespace that mc resides in?
    >
    >
    > class myClass:
    > --def func1(self):
    > ----self.mc = 1
    > ----mc2 = 3
    > ----print 'in myClass.func1'
    > ----print 'printing locals'
    > ----print locals()
    > ----print[/color]

    I think you're looking for vars(self) or self.__dict__:

    py> class MyClass(object) :
    .... def func1(self):
    .... self.mc = 1
    .... mc2 = 3
    .... print locals()
    .... print vars(self)
    .... print self.__dict__
    ....
    py> MyClass().func1 ()
    {'self': <__main__.MyCla ss object at 0x027D8550>, 'mc2': 3}
    {'mc': 1}
    {'mc': 1}

    HTH,

    Steve

    Comment

    Working...