gpt4 book ai didi

python - 在 Python 的 imp 中, "ImportError: No frozen submodule named ..."

转载 作者:行者123 更新时间:2023-11-28 20:03:24 25 4
gpt4 key购买 nike

我正在尝试编写一个脚本,用于在目录中搜索具有给定名称的模块。我想使用 Python 的 impfind_module 方法.但是,我不太明白为什么以下内容不起作用。我在一个包含模块 iclib:

的目录中
kurt@kurt-ThinkPad:~/dev/ipercron-compose/furion$ tree
.
├── iclib
│   ├── __init__.py

在该目录中,我可以(在 iPython 中)导入 iclib:

In [1]: import iclib

我也可以在没有 path 参数的情况下使用 find_module:

In [1]: import imp

In [2]: imp.find_module('iclib')
Out[2]: (None, 'iclib', ('', '', 5))

但是,如果我尝试仅在当前目录中使用 find_module,则会出现错误:

In [3]: import os

In [4]: imp.find_module('iclib', os.getcwd())
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-4-ada6f3744e78> in <module>()
----> 1 imp.find_module('iclib', os.getcwd())

ImportError: No frozen submodule named /home/kurt/dev/ipercron-compose/furion.iclib

为什么这行不通?

最佳答案

关注此issue on bugs.python.orgpath 参数需要嵌入到列表中:

In [4]: imp.find_module('iclib',[os.getcwd()])
Out[4]: (None, '/home/kurt/dev/ipercron-compose/furion/iclib', ('', '', 5))

用方括号括住 os.getcwd(),该函数返回预期的输出。

关于python - 在 Python 的 imp 中, "ImportError: No frozen submodule named ...",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41127133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com