1. ホーム
  2. パイソン

[解決済み】モジュール名に'-'ダッシュやハイフンが入っている場合のインポート方法は?

2022-04-01 10:08:51

質問

foo-bar.pyをインポートしたいのですが、どうすればいいですか?これは動作します。

foobar = __import__("foo-bar")

これは、そうではありません。

from "foo-bar" import *

私の質問です。上記の形式を使用する方法はありますか? from "foo-bar" import * を持つモジュールをインポートするために - を入れるのですか?

どのように解決するのですか?

できない foo-bar は識別子ではないので、ファイル名を foo_bar.py

編集する もし import が目的ではない場合(つまり sys.modules ファイル内のすべてのグローバルを自分のスコープに取り込むだけでよいのです。 execfile

# contents of foo-bar.py
baz = 'quux'

>>> execfile('foo-bar.py')
>>> baz
'quux'
>>>