从多处理器线程返回一个列表 - TypeError: unhashable type: 'list'

麦克卢姆斯

所以我的目标是使用 multiprocessing 来运行一个返回列表的函数,但如果它花费的时间太长,则终止该线程。这是我的代码,主要受这篇文章的启发:

如何恢复传递给 multiprocessing.Process 的函数的返回值?

def scrapeBank(bankName, return_dict)
    # [do some stuff that generates list of transactions]
    return_dict[transactions] = transactions

TIMEOUT = 60 # seconds

if __name__ == '__main__':
    manager = multiprocessing.Manager()
    return_dict = manager.dict()
    p = multiprocessing.Process(target=scrapeBank, args=('bankName',return_dict))
    p.start()

    p.join(TIMEOUT)

    if p.is_alive():
        print('function terminated')
        p.terminate()
        p.join()

    print return_dict.values()

当我运行它时,我得到'TypeError:unhashable type:'list''。我用谷歌搜索了这个错误,不幸的是真的很难理解它告诉我的内容(我是 python 新手)。

非常愿意采用另一种方式杀死一个需要很长时间的函数,以避免多处理凝灰岩。

穆罕默德·埃尔马赫久比

你的问题是在线 return_dict[transactions] = transactions

Python Dict 要求键是不可变的(即不可更改)。

python Listtransactions是可变的,因此您不能将其用作 key return_dict[transactions]

使它成为一个字符串return_dict['transactions'] = transactions

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

列表列表 = TypeError: unhashable type: 'list'

pandas 函数返回多个值错误 - TypeError: unhashable type: 'list'

TypeError: unhashable type: 'list' 如何从数据列表中获取出现

在 python 上导出结果:TypeError: unhashable type: 'list'

TypeError: unhashable type: 'list' 绘制多个图表时

何时以及为何发生 TypeError: unhashable type: 'list'?

TypeError: unhashable type: 'list' Python error while append

TypeError: unhashable type: 'list' only when using multidimensional list to initialize set

TypeError: unhashable type: 'list' while loading pre-trained ResNet in Tensorflow?

在 nltk.FreqDist() 函数中使用时显示“TypeError: unhashable type: 'list'”

TypeError: unhashable type: 'set' in Flask Form

API 给出 TypeError: unhashable type: 'dict'

TypeError: unhashable type: 'StringVar' 关闭 tkinter 窗口

TypeError: unhashable type: 'dict' 从复杂列表结构中删除重复项

TypeError: unhashable type: 'set' in Flask Form 上传文件时

Django, TypeError: unhashable type: 'dict', 错误在哪里?

Python dictionary.get TypeError: unhashable type: 'Series'

TypeError: unhashable type: 'numpy.ndarray' 试图绘制 DataFrame 时

TypeError: unhashable type: 'dict' when update array in MongoDB

Docker Python API Update 方法生成 TypeError: unhashable type: 'dict'

命令引發異常:TypeError: unhashable type: 'dict'

尝试制作列表字典时,如何解决错误“ unhashable type:'list'”?

Pandas 对索引进行排序抛出“unhashable type: 'list'”错误

TypeError unhashable type: 'set' 当你在数据集中提取和选择 nan 时

将函数应用于每个组:TypeError: unhashable type: 'numpy.ndarray'

TypeError: unhashable type: 'numpy.ndarray' 试图从数据集创建散点图

TypeError: unhashable type: 'numpy.ndarray' 从 BigQuery 合并 Pandas 数据帧时

skimage.io.imshow(winname, image_arr) 给出 TypeError: unhashable type: 'numpy.ndarray'

获取 TypeError: unhashable type: 'slice' 使用 loc 对多级列进行切片时