Python检查对象是ListProxy还是DictProxy

问题描述 投票:1回答:1

我正在python中使用多处理模块,并使用mp管理器提供的共享变量列表和字典。

import multiprocessing as mp    
a = mp.Manager()

b = a.list()
b
<ListProxy object, typeid 'list' at 0x14098207908>

c = a.dict()
c
<DictProxy object, typeid 'dict' at 0x140984579c8>

我想做:

if isinstance(b, ListProxy):
    do something
elif isinstance(c, DictProxy):
    do something else

但是这些似乎不是内置类型,我尝试根据基本列表和字典类型检查它们,但它们显然不起作用

如何在代码中测试这些类型?

python multiprocessing typing
1个回答
0
投票
from multiprocessing.manager import ListProxy, DictProxy

if isinstance(b, ListProxy):
    do something
elif isinstance(c, DictProxy):
    do something else

您可以仅从定义它们的位置导入它们,这在管理器模块中

© www.soinside.com 2019 - 2024. All rights reserved.