2013-02-12 213 views
-3

我能够理解什么是构造函数,直到我看到传入的参数为止,为什么,如果构造函数是一个方法,一旦调用该对象就运行,人类是否有时间输入所需的参数?了解为什么构造函数需要参数?

class test: 
    def __init__(self, arg1, arg2, arg3): 
     self.arg1 = arg1 
     self.arg2 = arg2 
     self.arg3 = arg3 

那么基本上这些参数如何设置? (如果你没有得到我的问题,请问我再说一次)

谢谢!

+2

人类有时间可以输入任何其他函数/方法所需的参数吗? – 2013-02-12 09:35:16

+0

你能改说吗? – LtWorf 2013-02-12 09:35:39

+0

http://stackoverflow.com/questions/625083/python-init-and-self-what-do-they-do - 只是为了确保你*“了解什么构造函数是”* – root 2013-02-12 09:37:12

回答

0
test1 = test(1, 2, 3) 

构造函数就像任何旧函数一样,并且将参数传递给它。一旦创建了对象

0

构造函数被调用,而不是一旦它被称为:

t = test (arg1, arg2, arg3) 
0

简单 - 当你实例化类以后:

a = test(arg1, arg2, arg3) 

a现在是一个测试类,在初始化时设置了3个参数。

+1

@CasparWylie你不能有多个构造函数。 – Volatility 2013-02-12 09:38:31

+0

初始化对象时会调用__init__' - 根据定义您不能有多个'__init__'。 – TyrantWave 2013-02-12 09:40:05

+0

这些参数可能具有默认值(如果未设置,则将为“无”)。如果你不手动设置它们,'def __init __(self,arg1 = 2,arg2 = 3)'将默认'arg1,2'到'2,3'。 – TyrantWave 2013-02-12 09:44:10

0

这背后的意图是直接初始化传递给构造函数的一些变量。构造函数如前所述,称为:

t = test(arg1, arg2, arg3) 

然后,您可以为您的类中传递的参数定义的值。

相关问题