gpt4 book ai didi

Python 类和方法实例化

转载 作者:太空宇宙 更新时间:2023-11-03 16:30:31 25 4
gpt4 key购买 nike

这是我的代码:

class calculator:

def addition(x,y):
added=x+y
print(added)

def subtraction(x,y):
sub=x-y
print(sub)

def multiplication(x,y):
mult=x*y
print(mult)

def division(x,y):
div= x/y
print(div)

calculator.addition(5,7)

这个程序给了我以下错误:

Traceback (most recent call last):
File "C:/Python27/docs/defin_class.py", line 21, in <module>
calculator.addition(6,3)
TypeError: unbound method addition() must be called with calculator instance as first argument (got int instance instead)

我不明白这个错误。请帮忙。

最佳答案

因此,无需过多关注细节,您应该在每个函数上方添加 @staticmethod 装饰器,就像我在下面所做的那样:

class calculator:

@staticmethod
def addition(x,y):
added=x+y
print(added)

@staticmethod
def subtraction(x,y):
sub=x-y
print(sub)

@staticmethod
def multiplication(x,y):
mult=x*y
print(mult)

@staticmethod
def division(x,y):
div= x/y
print(div)

calculator.addition(5,7)

原因是所有这些方法都是计算器的函数,但它们并不操作计算器类的对象。

要全面了解您应该在 Python 中使用的不同类型的方法,我强烈推荐 this blog post 。祝你好运!

关于Python 类和方法实例化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37638739/

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