Python 这个函数有什么问题?Can';我想不出来
我一直在尝试让一个函数工作,但我似乎不明白为什么会这样Python 这个函数有什么问题?Can';我想不出来,python,function,types,Python,Function,Types,我一直在尝试让一个函数工作,但我似乎不明白为什么会这样 TypeError: stringCounter() takes exactly 1 argument (0 given) 每次我运行这个代码 def stringCounter(count): name ='Hi' formatString = "%s run count is %d" print formatString % (name, count) test = stringCounter() t
TypeError: stringCounter() takes exactly 1 argument (0 given)
每次我运行这个代码
def stringCounter(count):
name ='Hi'
formatString = "%s run count is %d"
print formatString % (name, count)
test = stringCounter()
test.stringCounter(1)
我尝试过添加self,弄乱传递的变量我做错了什么?谢谢大家 这是:
test = stringCounter()
显然是错误的,它调用stringCounter()
函数而不传递任何参数。正如错误所说。删除这一行
这是:
test.stringCounter(1)
test.stringCounter(1)
也是错误的,在您的程序中没有名为test
的东西包含名为stringCounter()
的函数。应该是:
stringCounter(1)
错误是不言自明的:
test = stringCounter()
这里没有向stringCounter()
传递任何参数,而需要一个参数(即count
)。你可能只是想
stringCounter(1) # don't assign this to anything, it returns None
这样做:
test = stringCounter
test(1)
或直接:
stringCounter(1)
您正在调用行中没有参数的stringCounter test=stringCounter()
看起来您正在尝试实例化它,但它是一个函数,而不是一个类。您没有向函数传递任何参数
test=stringCounter()
这一行没有意义,因为test是None(前面的函数不返回任何内容)