Object Dask包映射:将属性指定给对象
我有一组python对象(我只给出了一个例子:代码中的x),我想使用dask包处理它们。计算的结果值将被指定为对象的属性(下面代码中的x.test)Object Dask包映射:将属性指定给对象,object,attributes,dask,Object,Attributes,Dask,我有一组python对象(我只给出了一个例子:代码中的x),我想使用dask包处理它们。计算的结果值将被指定为对象的属性(下面代码中的x.test) import dask.bag as db class Test(): pass x = Test() def dask_test(x): somevalue = someprocess(x) setattr(x, "test", somevalue) b = db.from_sequence([
import dask.bag as db
class Test():
pass
x = Test()
def dask_test(x):
somevalue = someprocess(x)
setattr(x, "test", somevalue)
b = db.from_sequence([x], npartitions = 1)
b.map(dask_test).compute()
x.test
上面给出了一个错误:AttributeError:“Test”对象没有属性“Test”
这里的吼声很好用
setattr(x, "test", 'somevalue')
x.test
您应该从
dask_test
函数返回一个值:
def dask_测试(x):
setattr(x,“测试”,真)
返回x
你能详细说明一下你想要完成什么吗?@joebeeson我正试图使用dask bag多重处理来处理一些对象,并将处理结果作为属性分配给对象。只是出于好奇,属性在哪里丢失,为什么丢失?所以,有两件事。Dask将在封面下进行一点序列化和复制,依靠突变是一门你想避开的大炮。如果你有一个更具体的例子说明你为什么要这样做,请告诉我。就目前而言,您的示例很难与解决方案相关联。