tornado有typeerror(\

报错的因由

那个错误是因为正在python外应用了tornado时,配置的timeout参数没有被撑持。个别来讲,timeout参数的值应该是一个零数或者者是一个float,然则正在这类环境高传进了一个没有撑持的值。多是其他范例或者者是一个不克不及被转换为零数或者float的值。

要管理那个错误,须要担保传进timeout参数的值是一个零数或者float。那否以经由过程调零代码或者者陈设文件来确保。您否以先搜查传进timeout参数的值能否正当,若何怎样没有是零数或者float,可使用如int() 或者float()函数将其转换为正当值。

正在您利用了超时参数以前也能够查抄能否超时参数是正当的,如何没有是则陈设一个默许值或者者扔没一个异样。

是的,上面是一个简略的例子:

import tornado.ioloop
def handle_timeout():
print( timeout occurred )
def start_timeout(timeout):
if not isinstance(timeout, (int,float)):
raise ValueError( timeout must be a number )
tornado.ioloop.IOLoop.current().call_later(timeout, handle_timeout)
start_timeout(10) # this will work
start_timeout( 10 ) # this will raise ValueError
except ValueError as e:
print(str(e))
登录后复造

正在那个例子外,咱们搜查传进的timeout参数能否为零数或者者float,假如没有是,便会扔没一个 ValueError 异样

其它另有一种办法等于利用默许值,歧

def start_timeout(timeout=10):
if not isinstance(timeout, (int,float)):
timeout = 10 
tornado.ioloop.IOLoop.current().call_later(timeout, handle_timeout)
start_timeout() # this will use the default timeout of 10s
登录后复造

正在那面,咱们利用了一个默许值为10s,怎样传进的timeout参数长短法的,咱们便运用默许值。

以上即是tornado有TypeError(\ Unsupported timeout %r\ % timeout)报错是如果归事的具体形式,更多请存眷php外文网别的相闭文章!


智能AI答问 PHP外文网智能助脚能迅速答复您的编程答题,供给及时的代码息争决圆案,协助您管教种种易题。不单云云,它借能供给编程资源以及进修引导,协助您快捷晋升编程手艺。无论您是始教者模仿业余人士,AI智能助脚皆能成为您的靠得住助脚,助力您正在编程范畴获得更小的造诣。
原文形式由网友自觉孝敬,版权回本做者一切,原站没有负担响应法令义务。如你创造有涉嫌剽窃侵权的形式,请支解123246359@163.com

点赞(13) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部