Python:将常量作为方法参数传递

时间:2016-10-26 10:45:11

标签: python parameters constants

我想将类名作为常量传递给方法。

示例:

def foo(Bar):
   # ...

最后,我希望能够在方法 foo

中使用 Bar 作为类名

这可能吗?

2 个答案:

答案 0 :(得分:1)

是的,您可以将类作为参数传递给函数。以下是证明它的例子。

class Bar():
    @staticmethod   # created staticmethod; can be call without creating the object
    def my_print():
        print 'Hello, I am class function'

def foo(my_class):
    my_class().my_print()  # call my_print() of the object passed

foo(Bar) # Pass class "Bar" as argument to "foo()"
# prints: Hello, I am class function

答案 1 :(得分:0)

看看这个

class Bar():
    pass

def foo(param):
    print "class_name is {}".format(param.__name__) #prints class name

foo(Bar)