python传递对象作为参数

时间:2012-07-14 00:57:22

标签: python oop object

如何在调用类方法时将对象作为参数传递给类方法并调用传递对象的方法?

说我有:

class myclass:
    def __init__(self):
        pass
    def myfunc(self, something):
        something.do()


anobject = blah.xyz()

another_obj = myclass()
another_obj.myfunc(anobject)

3 个答案:

答案 0 :(得分:6)

只要something有一个.do方法,它就应该按照给定的方式工作(一旦修复了缩进和声明顺序)。你尝试过运行吗?

这是(或多或少)许多标准函数的工作原理 - 例如,内置的len函数几乎是

def len(obj):
    return obj.__len__()

答案 1 :(得分:0)

您想要调用过去对象的哪种方法?

顺便说一下,myfunc是一个实例方法。

答案 2 :(得分:-1)

class student :
 ID=0
 name=""

def fun(s=student()):
  print (s.id)
  print (s.name)


st=student()
fun(st)