从类方法中获取方法名称 [英] Getting method name from within the class method

查看:60
本文介绍了从类方法中获取方法名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要能够在该方法中获取当前执行的方法的名称

。我知道方法对象确实有

__name__属性,但我知道如何使用

方法访问它。


这样的事情:


A级:

.....

def a_method(自我,这个,那个):

打印< __ name __>


a = A()

a.a_method()

''a_method''

Thanx为你提供帮助!

-

Mitko Haralanov mi *** @ qlogic.com

高级软件工程师650.934.8064

系统互连组 http://www.qlogic.com

I need to be able to get the name of the currently executed method
within that method. I know that the method object does have the
__name__ attribute but I know know how to access it from withing the
method.

Something like this:

class A:
.....
def a_method (self, this, that):
print <__name__>

a = A ()
a.a_method()
''a_method''
Thanx for your help!
--
Mitko Haralanov mi***@qlogic.com
Senior Software Engineer 650.934.8064
System Interconnect Group http://www.qlogic.com

推荐答案



Mitko Haralanov写道:

Mitko Haralanov wrote:

我需要能够获取当前执行方法的名称

在该方法中。我知道方法对象确实有

__name__属性,但我知道如何使用

方法访问它。


这样的事情:


A级:

....

def a_method(自我,这个,那个) :

打印< __ name __>


a = A()

a.a_method()

''a_method''


谢谢你的帮助!
I need to be able to get the name of the currently executed method
within that method. I know that the method object does have the
__name__ attribute but I know know how to access it from withing the
method.

Something like this:

class A:
....
def a_method (self, this, that):
print <__name__>

a = A ()
a.a_method()
''a_method''
Thanx for your help!



我不确定这是你想要的,这对我来说似乎是多余的所以我是

可能误会了什么,但我没有;

I''m not sure this is what you want, it seems redundant to me so i am
probably misunderstanding something, but I did;


>> class test(object):
>>class test(object):



.... def a_method(self,this,that):

.... print self .a_method .__ name__

....

.... def a_method(self,this,that):
.... print self.a_method.__name__
....


> > a = test()
a.a_method(''this'',''that'')
>>a=test()
a.a_method(''this'',''that'')



a_method

a_method


Mitko Haralanov写道:
Mitko Haralanov wrote:

我需要能够得到这个名字在该方法中当前执行的方法

。我知道方法对象确实有

__name__属性,但我知道如何使用

方法访问它。


这样的事情:


A级:

....

def a_method(自我,这个,那个) :

打印< __ name __>


a = A()

a.a_method()

''a_method''


谢谢你的帮助!
I need to be able to get the name of the currently executed method
within that method. I know that the method object does have the
__name__ attribute but I know know how to access it from withing the
method.

Something like this:

class A:
....
def a_method (self, this, that):
print <__name__>

a = A ()
a.a_method()
''a_method''
Thanx for your help!



因为你知道你在方法中,你可以对它进行硬编码:


def a_method(self,this,than ):

print" a_method"


除非

,否则无法从访问变量中获得任何收益打算用其他方法来打印。


-Larry

Since you KNOW you are in the method, you can hardcode it:

def a_method(self, this, than):
print "a_method"

There''s nothing to be gained from accessing a variable unless
you are going to be calling some other method to do the printing.

-Larry


2006年10月18日14:38:12 -0700
ye ************* @gmail。 com 写道:
On 18 Oct 2006 14:38:12 -0700
ye*************@gmail.com wrote:

> class test(object):
>class test(object):



... def a_method(self,this,that):

... print self.a_method .__ name__

... def a_method(self,this,that):
... print self.a_method.__name__



执行上述操作显然会有效!


但是,我不想使用该函数的名称

打印语句(.a_method。部分)。想象一下,在函数中有大约100个

以上的打印语句,然后你改变了函数的名字

。我希望所有100个打印语句都能正常工作,而不必更改每个打印语句以反映新的功能名称。


-

Mitko Haralanov mi***@qlogic.com

高级软件工程师650.934.8064

系统互连组 http://www.qlogic.com

Doing the above will obviously work!

However, I don''t want to have to use the name of the function in the
print statement (the ".a_method." part). Imagine having about 100 of
the above print statements in the function and then you change the name
of the function. I want all 100 of the print statements to work without
having to change every one of them to reflect the new function name.

--
Mitko Haralanov mi***@qlogic.com
Senior Software Engineer 650.934.8064
System Interconnect Group http://www.qlogic.com


这篇关于从类方法中获取方法名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆