Jak zjistit název metody uvnitř třídy?

a.

class C:
    def m1(self):
         print self.m1.__name__

b.

import sys

class a:
    def aa(self):
        print "ja jsem metoda:", sys._getframe(0).f_code.co_name

x=a()
x.aa()

c.

class a:
    def aa(self):
        import inspect
        frame = inspect.currentframe()
        info = inspect.getframeinfo(frame)
        print 'Jsem metoda', info[2]
        print 'Podrobnejsi info:', info

x=a()
x.aa()

d.

def JmenoMetody():
    import inspect
    return inspect.stack()[1][3]

class a:
    def aa(self):
        print 'Jsem metoda', JmenoMetody()

x=a()
x.aa()

e.

import sys

def MojeJmeno():
    '''Vraci jmeno volajiciho.'''
    return sys._getframe(1).f_code.co_name

class a:
    def aa(self):
        print 'Jsem metoda', MojeJmeno()

x = a()
x.aa()




subject:
  ( 112 subscribers )