mirror of
https://github.com/3b1b/manim.git
synced 2026-04-26 03:00:23 -04:00
Updated extract_scene to use importlib
This commit is contained in:
@@ -2,7 +2,8 @@
|
||||
|
||||
import sys
|
||||
import argparse
|
||||
import imp
|
||||
# import imp
|
||||
import importlib
|
||||
import inspect
|
||||
import itertools as it
|
||||
import os
|
||||
@@ -236,30 +237,9 @@ def get_scene_classes(scene_names_to_classes, config):
|
||||
return prompt_user_for_choice(scene_names_to_classes)
|
||||
|
||||
|
||||
def get_module_windows(file_name):
|
||||
module_name = file_name.replace(".py", "")
|
||||
last_module = imp.load_module(
|
||||
"__init__", *imp.find_module("__init__", ['.']))
|
||||
for part in module_name.split(os.sep):
|
||||
load_args = imp.find_module(
|
||||
part, [os.path.dirname(last_module.__file__)])
|
||||
last_module = imp.load_module(part, *load_args)
|
||||
return last_module
|
||||
|
||||
|
||||
def get_module_posix(file_name):
|
||||
module_name = file_name.replace(".py", "")
|
||||
last_module = imp.load_module(".", *imp.find_module("."))
|
||||
for part in module_name.split(os.sep):
|
||||
load_args = imp.find_module(part, last_module.__path__)
|
||||
last_module = imp.load_module(part, *load_args)
|
||||
return last_module
|
||||
|
||||
|
||||
def get_module(file_name):
|
||||
if os.name == 'nt':
|
||||
return get_module_windows(file_name)
|
||||
return get_module_posix(file_name)
|
||||
module_name = file_name.replace(".py", "").replace(os.sep, ".")
|
||||
return importlib.import_module(module_name)
|
||||
|
||||
|
||||
def main():
|
||||
|
||||
Reference in New Issue
Block a user