最終更新日 2024-09-25

Pythonで作った自作ライブラリや独自ライブラリ等の読み込み

概要

Pythonライブラリについては、マクロを実行しているフォルダ内にあるものは、
importで読み込むことが出来ます。

それ以外のフォルダにあるものでも、

import sys
sys.path.append("...独自のフォルダのパス...")

といった方法でライブラリの検索対象を増やすことが出来ます。
これは通常のPythonの挙動そのままです。

「sys.path.append」することで、通常のPythonライブラリだけではなく、
C#などで制作したアセンブリ(.dll)を検索するパスも追加することが出来ますが、
それについては別途、次の章にて解説しています。

一番簡単なサンプル

簡単なサンプルをみていきましょう。
「test.mac」ファイルから「hmTest.py」ファイルを読み込み、
そのpyファイルから、さらに別の hmSubTest.py ファイルを import しています。

test.mac
#PY = loaddll( hidemarudir + @"\hmPy.dll" );

#r = dllfuncw(#PY, "DoFile", currentmacrodirectory + "/hmTest.py");

freedll(#PY);
hmTest.py
import hmSubTest

hm.debuginfo("hmTest.py通過")

def DestroyScope():
    hm.debuginfo(hm.Macro.Var["filename"]);
hmSubTest.py
import hmSubTest

hm.debuginfo("hmSubTest通過")    

これら「test.mac」「hmTest.py」「hmSubTest.py」の3つのファイルを同じフォルダに入れて、
test.macを実行すれば、うまく機能します。