Я пытаюсь реплицировать from foo.bar import object
с помощью функции __import__
, и я, кажется, ударил стену.
from glob import glob
легко:
glob = __import__("glob",glob)
или glob = __import__("glob").glob
Проблема заключается в том, что я импортирую из пакета (например, bar), и я хочу, чтобы script в пакете был источником импорта.
Так что мне хотелось бы что-то вроде
string_to_import = "bar"
object = __import__("foo",string_to_import).object
Но это просто импортирует __init__
в пакет foo.
Как это можно сделать?
EDIT:
Когда я использую очевидное, только __init__
называется
__import__("foo.bar")
<module 'foo' from 'foo/__init__.pyc'>