程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

TypeError: test() argument after * must be an iterable, not int造成的原因

发布于2019-08-07 12:56     阅读(4171)     评论(0)     点赞(2)     收藏(2)


写的代码:

import threading as thr
info = [1,2,3,4,55,233]


def test(i):
    print(222)

t = thr.Thread(target=test,args=(5))
t.start()
    

 

文档查找:

class threading.Thread(group=None, target=None, name=None, args=(), kwargs={}, *, daemon=None)

This constructor should always be called with keyword arguments. Arguments are:

group should be None; reserved for future extension when a ThreadGroup class is implemented.

target is the callable object to be invoked by the run() method. Defaults to None, meaning nothing is called.

name is the thread name. By default, a unique name is constructed of the form “Thread-N” where N is a small decimal number.

args is the argument tuple for the target invocation. Defaults to ().

#默认参数为元组

kwargs is a dictionary of keyword arguments for the target invocation. Defaults to {}.

If not None, daemon explicitly sets whether the thread is daemonic. If None (the default), the daemonic property is inherited from the current thread.

If the subclass overrides the constructor, it must make sure to invoke the base class constructor (Thread.__init__()) before doing anything else to the thread

报错的原因:

传入参数需要是一个元组,所以修改一下代码,这里参数后面要加逗号(5,)

修改代码:


import threading as thr
info = [1,2,3,4,55,233]

def test(i):
    print(222)

t = thr.Thread(target=test,args=(5,))
t.start()
    

 

 



所属网站分类: 技术文章 > 博客

作者:我想吃火锅

链接:https://www.pythonheidong.com/blog/article/11075/d147a032f695389a5fe9/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)