python错误“typeerror:nonetype对象不可调用”

时间:2015-10-20 14:11:33

标签: python nonetype

我正在尝试在python中创建一个简单的计时器脚本。我看到很多其他人也有这个错误,但我认为我的错误可能会有所不同,因为我是python的新手:

time=60
from time import sleep
while (time>0):
    print ("you have") (time) ("seconds left")
    time-=1
    sleep(1)

下面是结果:

>>> you have Traceback (most recent call last): File "H:\counter.py", line 4, in <module> print ("you have") (time) ("seconds left") TypeError: 'NoneType' object is not callable

有人能发现此错误吗? 使用%s也失败了我在时变量

周围使用+'s和str()

2 个答案:

答案 0 :(得分:2)

一个函数只能有一组参数。

print_statement = "you have" + str(time) + "seconds left"
print(print_statement)

以上代码应该有效。

答案 1 :(得分:1)

您使用的print函数语法错误。请注意中的print是可调用的。因此,当您调用它时,您可以将所有需要打印的内容作为参数传递。

因此

print ("you have", time, "seconds left")

是正确的语法。您也可以选择指定分隔符。

对于后人,当您尝试将TypeError: 'NoneType' object is not callable 对象用作可调用时,NoneType会引发错误。当Python发现您曾尝试将time对象)传递给print ("you have")并返回NoneType 对象时,它就会被标记出来。

请注意,在 print可调用,它实质上会返回NullType 对象(这根本不算什么)就此而言,因此不可赎回)。