如何打印对象名称是哪个对象正在调用类。
class Sample:
def __init__(self):
self.x=10
def modify(self):
self.x+=1
def display(self):
#Trying to do something to print which object is calling this method
inspect
为您提供了stack()
方法,该方法为您提供了有关调用者框架的所有信息,例如名称:
import inspect
class Sample:
def __init__(self):
self.x = 10
def modify(self):
self.display()
def display(self):
print(f"Caller name: {inspect.stack()[1][3]}")
a = Sample()
a.modify()
OUTPUT:
来电者姓名:修改