python 获取实例的名字

Hi all!
我想在python中获取实例的名字。
例如:

>>class Base(object):
>> def say_Myname():
>> ......
>>b = Base()
>>b.say_Myname()
>>b
>>a = Base()
>>a.say_Myname()
>>a

请问有什么简洁的方法可以做到?
谢谢!

阅读 11.1k
1 个回答
import traceback

class Base(object):
    def __init__(self):
        (filename,line_number,function_name,text)=traceback.extract_stack()[-2]
        self.name = text[:text.find('=')].strip()
    def say_Myname(self):
        print self.name;

b = Base()
b.say_Myname()
a = Base()
a.say_Myname()

真蛋疼这个需求 ...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题