获取函数的名称
在函数外部获取函数的名称,可以使用.__name__来获取。
def test_func_name1():print('test')func_name1 = test_func_name1.__name__print(func_name1) # test_func_name1
在函数内部获取当前函数的名称,可以使用sys._getframe().f_code.co_name来获取
import sysdef test_func_name2():print(sys._getframe().f_code.co_name)test_func_name2() # test_func_name2
获取类和方法名称
获取类名称,可以用self.class.name
import sysclass Test1(object):def test1(self):print(self.__class__.__name__)test1_obj = Test1()test1_obj.test1() # Test1
获取类里面方法名称,跟获取函数名称一样sys._getframe().f_code.co_name)
class Test2(object):def test2(self):print('当前类的名为:', self.__class__.__name__)print('当前方法名称为:', sys._getframe().f_code.co_name)test2_obj = Test2()test2_obj.test2()
效果如下: