matlab 多条曲线,根据自己的选择输出,matlab输出多个变量
希望从大蟒中的并行化函数输出多个结果(或返回)。出现了某种酸洗错误。请注意,我也希望在子流程中看到x的打印输出。
% %时间
从数学导入平方根计算
从joblib并行导入,延迟
# pip安装作业库
导入多重处理
num _ cores=多处理。CPU _ count()
定义生产者():
allX=[]
对于范围(0,10)内的x:
x=x*5
打印(产生的% s“% x”)
输出=sqrt(x)
打印(输出sqrt %s %输出
allX.append(x)
返回所有输出,所有x
输出应该是两个列表
x*5
sqrt(x*5)。
输出sqrt 0.0
生产了5
输出sqrt 2.20387868686
生产了10个
输出sqrt 3.16 .36866.88668686667
生产了15个
输出sqrt 3.8 .38864.88888888861
生产了20个
输出sqrt 4 . 54686 . 48484848686
生产了25个
输出sqrt 5.0
生产了30个
输出sqrt 5 . 45686 . 58585858661
生产了35个
输出sqrt 5.91658586867
生产了40个
输出sqrt 6.3 .36866.66666666667
生产了45个
输出sqrt 6.7 .38666.66666666667
-
_RemoteTraceback回溯(最近一次调用)
_RemoteTraceback:
回溯(最近一次呼叫):
文件"/usr/local/lib/python 3.6/dist-packages/joblib/externals/loky/back end/queues。py”,第151行,in _feed
obj,reducers=reducers)
文件/usr/local/lib/python 3.6/dist-packages/job lib/externals/loky/back end/reduction。py ,第145行,转储中
物理转储(对象)
__getstate__中的文件"/usr/local/lib/python 3.6/dist-packages/job lib/parallel。py”,第290行
for func,args,kwargs in self.items]
文件"/usr/local/lib/python 3.6/dist-packages/job lib/parallel。py”,第290行,在
for func,args,kwargs in self.items]
上述异常是以下异常的直接原因:
在()
- 1 get_ipython().run_cell_magic(time ,, from math import sqrt n from joblib import Parallel,delayed n n def producer(): n n for x in range(0,10): n n x=x * 5 n print( Produced % s % x) n Output=sqrt(x) n print( Output sqrt % s % Output) n yield Output,xnnoutSqrt,outX=Parallel(n _ jobs=2)(delayed(I)for I in producer())
run_cell_magic(自身,magic_name,line,cell)中的/usr/local/lib/python 3.6/dist-packages/IPython/core/interactive shell。巴拉圭
2115 magic _ arg _ s=self。var _ expand(line,stack_depth)
2116 with self.builtin_trap:
- 2117结果=fn(魔术参数,单元格)
2118返回结果
2119
及时(自身、生产线、单元、本地_ns)
/usr/local/lib/python 3.6/dist-packages/IPython/core/magic。py in(f,*a,**k)
186 #但是对于那一点点的状态来说,这是大材小用了。
187 def magic_deco(arg):
-188 call=f,*a,**k: f(*a,**k)
189
190如果可调用(参数):
/usr/local/lib/python 3.6/dist-packages/IPython/core/magics/execution。py in time(自身、生产线、单元、本地_ns)
1191其他:
1192 st=时钟2()
- 1193 exec(代码,全球,本地_ns)
1194 end=clock2()
1195输出=无
在()
__call__(self,iterable)中的/usr/local/lib/python 3.6/dist-packages/job lib/parallel巴拉圭
994
995与自我. backend.retrieval _ context():
- 996 self.retrieve()
997 #确保我们收到最后一条消息,告诉我们我们完成了
998已用时间=时间。时间()-自我._开始时间
恢复中的/usr/local/lib/python 3.6/dist-packages/job lib/parallel自我
897试试:
898 if getattr(self ._backend, supports_timeout ,False):
- 899自我.输出。延长(工作。get(time out=self。超时))
900其他:
901自我. output.extend(job.get())
包装_未来_结果中的/usr/local/lib/python 3.6/dist-packages/joblib/_ parallel _ backends。py(未来,超时)
515异步结果. get来自多重处理。
516试试:
- 517返回未来结果(超时=超时)
518除了LokyTimeoutError:
519引发TimeoutError()
/usr/lib/python 3.6/concurrent/futures/_ base。结果中的py(自身,超时)
430引发取消错误()
431 elif self ._state==已完成:
- 432回归自我__get_result()
433其他:
434引发TimeoutError()
_ _获取结果(自身)中的/usr/lib/python 3.6/concurrent/futures/_ base。巴拉圭
382 def __get_result(self):
383如果自我。_异常:
- 384提高自我。_异常
385其他:
386回归自我。_结果