gpt4 book ai didi

python - __init__() 的类型错误

转载 作者:行者123 更新时间:2023-11-28 19:35:38 26 4
gpt4 key购买 nike

我正在尝试创建一个营养计算器,但我遇到了一些关于 init() 的问题。

    def main():
print "Welcome to the MACRONUTRIENT CALCULATOR"
User_nutrition = get_data()
User_nutrition.calorie_budget()


class get_data(object):
def __init__(self, calorie_deficit):
self.calorie_deficit = calorie_deficit
def calorie_bugdet(self): # ask for calorie deficit
self.calorie_deficit = float(input("Enter you calorie deficit: "))



if __name__ == "__main__":
main()

我得到一个错误:

           TypeError: __init__() takes exactly 2 arguments (1 given)

但是,当我查看文档示例时,我看到了

    class Complex:
def __init__(self, realpart, imagpart):
self.r = realpart
self.i = imagpart

很好!我有点困惑。我知道 init(self) 有助于初始化对象并在内存中为其分配空间,但我所知道的仅此而已。我是否遗漏了我应该了解的有关 init 和 self 的任何其他信息?

最佳答案

问题在于:

User_nutrition = get_data()   # one argument self
# and
def __init__(self, calorie_deficit): # two arguments

你应该这样做

User_nutrition = get_data(5) # add one argument
# or
def __init__(self, calorie_deficit = 0): # make one argument default

关于python - __init__() 的类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16835651/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com