2011年12月15日木曜日

Pythonではモジュール名などにハイフンを使わないのが無難

Pythonでモジュール名やパッケージ名にハイフン(-)を使うと、ハイフンが引き算の演算子と解釈されて普通にimportできなくなる模様。

無理やりimportするには、imp.load_moduleかimp.load_sourceを使用する。imp.load_sourceを使用する例は、以下の通り。

import imp
git_ftp_mod = imp.load_source("git_ftp_mod", "git-ftp.py") 

ただし、imp.load_sourceは後方互換性のためのメソッドで、非推奨とのこと。

似たような問題はGroovyでも経験したことがあり、いわゆるスクリプト系の言語ではモジュール名などにハイフンを使わないのが無難と思われる。

0 件のコメント:

コメントを投稿