matlab上でpythonのユーザー定義関数の編集結果が反映されない。
3 views (last 30 days)
Show older comments
Yusuke Sakamaki
on 26 Apr 2022
Commented: Yusuke Sakamaki
on 27 Apr 2022
matlab上でpythonのユーザー定義関数の編集結果が反映されません。
matlabの再起動をすることで、pythonのユーザー定義関数の編集結果が反映されるので、
暫定的にpythonのユーザー定義関数の編集したときは毎回matlabを再起動しています。
恒久的にはmatlabの設定等で、pythonのユーザー定義関数を編集したらただちに反映されてほしいです。
matlabの設定等でこの問題を対処する方法はありませんか?
【実行環境】
・Windows 10
・MATLAB R2021a update 6(最新アップデート)
・Python 3.8.10
matlabワークスペース上で以下を実行
py.test_func.testcal(1,6)
【python側】ファイル名:test_func.py
def testcal(a,b):
return a+b
【出力結果】
ans =
7
pythonのユーザー定義関数を編集し、matlabワークスペース上で以下を実行
py.test_func.testcal(1,6)
【python側】ファイル名:test_func.py
def testcal(a,b):
return a*b % 出力結果を編集(足し算⇒掛け算)
【出力結果】
ans =
7 % 編集結果が反映されず。
0 Comments
Accepted Answer
Hiro Yoshino
on 27 Apr 2022
py モジュールの場合、変更した Python のファイルの内容が直ぐに反映されません。
再度読み込みが必要です:
in-process:
out-process:
リンク先をご覧ください。
なお、再読み込みをしなくても Python のファイルを外で実行して結果を得る方法が有ります。
pyrunfile をご確認ください。コマンドをそのまま叩く場合は、pyrun も使えます。
この2つは python ライブラリをロードしている訳ではないので、変更結果が反映された結果が即得られます。
More Answers (0)
See Also
Categories
Find more on MATLAB の Python ライブラリ in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!