2018-11-26 孙小北

Python构造函数报错:TypeError: People() takes no arguments

养浩然之气,做博学之人

问题

类的构造函数使用时报错如下:

Traceback (most recent call last):

  File "D:/PythonProjects/Demo/8classDemo.py", line 57, in <module>

    xwy2 = People('小望云', 2, '女')

TypeError: People() takes no arguments

代码

class People:
    # 类变量
    name = ''
    age = 0
    sex = '男'

    # 构造函数
    def __int__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex

    def speak(self):
        print('name:', self.name, ' age:', self.age, ' sex:', self.sex)

解决

检查构造函数 def __init__(self,   ,  ):    是不是写成了   def __int__(self,   ,   ):

或者是少了个下划线,__init__ ,前后各两个_下划线。

哈哈,没bug的程序员不是好程序员,出现这样错误的程序员一定是个假程序员。

总结

1)__init__    init前后各两个下划线_

2)如果不是1)中问题,就是参数问题, 重写构造函数后,参数必须和构造函数所必须参数一致



编辑:孙小北

本文地址: http://www.xiaowangyun.com/wyblog/detail/?id=1024

版权归属: www.xiaowangyun.com   转载时请以链接形式注明出处

物以类聚

最新评论

2017-10-06

一辈子不长,只有珍惜了,才不至于后悔。

2017-10-06

懂得感恩,才能走得更远。

标签云

归档

取消

感谢您的支持,您的每一次打赏都是一次鼓励!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦