In the Python API, how can I redirect the output of an asynchronous function call of a function without return value?
6 ビュー (過去 30 日間)
表示 古いコメント
I am using the Python API and I want to redirect the output of an asynchronously called function without return value. Is this maybe impossible?
My Python Script looks a little bit like this:
import matlab.engine as eng
import StringIO
out = StringIO.StringIO()
MAT = eng.start_matlab()
ret = MAT.func('arg', async=True, nargout=0, stdout=out)
while not ret.done() : pass
print out.getvalue()
MAT.quit()
When running this script, there is only a line feed / carriage return printed. The return value of
ret.result()
is "None".
0 件のコメント
採用された回答
Bo Li
2017 年 2 月 16 日
What about adding "ret.result()" before printing the output buffer like following?
while not ret.done() : pass
ret.result()
print out.getvalue()
3 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Call MATLAB from Python についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!