python类传值问题

 大伙能帮忙看看这段代码该怎么改吗,我在往类传值的时候就出现这个问题了,不知道该怎么改

img

init方法,左右两边是两个下划线,少了一个。

def _init_(self,name,age):
改为:
def __init__(self,name,age):

img


是两根下划线哟



```python
__init__

```

兄弟你构造函数写错了,是__init__

在方法为__init__时,类在实例化要和__init__有相同的参数,因为在实例化会自动调用__init__,而_init_就变成了自己定义的方法,没有特殊性,可以用 实例名.init()调用,这是两者区别

你好,Python类中的init方法应该是有两个下划线的,属于魔法函数:

class Dog():
    def __init__(self,name,age): # 两根下划线哦
        self.name=name
        self.age=age
    def sit(self):
        print(self.name.title()+"is now sitting!")
    def roll_over(self):
        print(self.name.title()+'rolled over!')
my_dog=Dog('wille',6)
my_dog.sit()
my_dog.roll_over()

希望能采纳,谢谢