2016-01-17 72 views
-1

打印方法的名称,例如:我怎样才能在我的课

class Employee: 
    'Common base class for all employees' 
    empCount = 0 

    def __init__(self, name, salary): 
     self.name = name 
     self.salary = salary 
     Employee.empCount += 1 

    def displayCount(self): 
    print "Total Employee %d" % Employee.empCount 

    def displayEmployee(self): 
     print "Name : ", self.name, ", Salary: ", self.salary 

我想打印的方法名。 输出应该是这样的:

Class Employee contains (displayCount,displayEmployee) 
+0

您使用哪种编程语言? – halfzebra

回答

1

这得到所有方法名称:

import inspect 
methodnames = [name for name,member in inspect.getmembers(Employee) if inspect.ismethod(member)] 

...这不相同,但不包括像__init__方法名与__开始:

import inspect 
methodnames = [name for name,member in inspect.getmembers(Employee) if inspect.ismethod(member) and not name.startswith('__')] 

在第二个版本中,methodnames将是['displayCount', 'displayEmployee']