Python 3.x 为什么可以';您是否可以将类属性作为参数直接分配给类括号,而不是使用def uuu init_uuu方法?
这不是更简单吗Python 3.x 为什么可以';您是否可以将类属性作为参数直接分配给类括号,而不是使用def uuu init_uuu方法?,python-3.x,class,init,Python 3.x,Class,Init,这不是更简单吗 class A(self, name, age): def info(self): print('My name is', name) print('My age is', age) me = A('Joe', 30) 为什么我需要这样做呢 class A: def __init__(self, name, age): self.name = name self.age = age
class A(self, name, age):
def info(self):
print('My name is', name)
print('My age is', age)
me = A('Joe', 30)
为什么我需要这样做呢
class A:
def __init__(self, name, age):
self.name = name
self.age = age
def info(self):
print('My name is', self.name)
print('My age is', self.age)
me = A('Joe', 30)
如果之前有人回答过,我会提前道歉,但我找不到答案,而且我是编程新手。你不能做类A(自我、姓名、年龄):
因为它是继承的语法,我们使用/define\uu初始化
,因为它基本上是python中类的构造函数
但你可以这样做:-
class A:
def info(self,name,age):
self.name=name
self.age=age
print('My name is', name)
print('My age is', age)
me = A()
me.info('Joe', 30)
第一种方法是如何继承:——这不是因为语言的设计。至于我们“需要”\uuuu init\uuuu
的原因,也是因为语言就是这样设计的。您可以在中阅读有关\uuuu init\uuu
的工作原理。这是否回答了您的问题?你不能这样做,因为这根本不是语言的工作方式,但请参阅,例如,了解书写所有内容的替代方法。感谢有关Inheritance costa的文档,这就解释了这一点。啊,括号是为其他内容保留的(Inheritance)!这也解释了为什么它们在创建类时是可选的。太好了!我没有涉及继承,但我只是覆盖了函数,看起来奇怪的是,你不能使用相同的语法。当你覆盖诸如“代码>继承< /代码>或<代码>多态性< /代码>之类的主题时,你会了解更多关于接受回答