python modulefinder:相对importpath太深

2024-05-17 01:10:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用modulefinder作为dump编写了一个简单的代码_平日你知道吗

import sys
from modulefinder import ModuleFinder

finder = ModuleFinder()
arg=sys.argv[1]
finder.run_script(arg)

print('Loaded modules:')
for name, mod in finder.modules.items():
    print('%s: ' % name, end='')
    print(','.join(list(mod.globalnames.keys())[:3]))

转储以下脚本的导入模块(测试.py)你知道吗

import types
from functools import wraps
from . import PidFile

我得到以下错误:

#./dump_mod.py ./test.py  
Traceback (most recent call last):
  File "./dump_mod.py", line 13, in <module>
    finder.run_script(arg)
  File "/usr/lib/python3.6/modulefinder.py", line 110, in run_script
    self.load_module('__main__', fp, pathname, stuff)
  File "/usr/lib/python3.6/modulefinder.py", line 304, in load_module
    self.scan_code(co, m)
  File "/usr/lib/python3.6/modulefinder.py", line 399, in scan_code
    parent = self.determine_parent(m, level=level)

  File "/usr/lib/python3.6/modulefinder.py", line 145, in determine_parent
    raise ImportError("relative importpath too deep")
ImportError: relative importpath too deep

我知道它来自“来自”。导入PidFile”,如何忽略此错误并返回正确的导入模块,除了行“from”。“导入文件”


Tags: runinfrompyimportmodfinderlib