在使用Ipython的python 3.3上
class Gear:
def __init__(self,chainring,cog):
self.chainring = chainring
self.cog = cog
def ratio () :
ratio = self.chainring/self.cog
return ratio
mygear = Gear(52,11)
mygear.ratio()
错误
TypeError: ratio() takes 0 positional arguments but 1 was given
最佳答案
当你说
mygear.ratio()
python将在内部调用此函数
ratio(mygear)
但是根据该功能的定义,
def ratio () :
它不接受任何输入参数。更改它以接受当前对象,像这样
def ratio(self):
关于python - 0个位置参数,但给出一个,但是为什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21309172/