在 Idle shell 中导入模块

发布于 2024-12-13 07:11:45 字数 476 浏览 3 评论 0原文

我正在尝试学习 python,但在导入模块时遇到问题。 我有一个 .pyc 文件,我正在尝试将其导入到名为 dfa.pyc 的空闲 shell 中,

该文件位于名为 xyz 的文件夹中。 我使用以下命令导航到此文件夹:

    os.chdir('/Users/xxx/Desktop/xyz')

所以现在,如果我尝试运行命令:

    from dfa import *

我收到错误:

    ImportError: No module named dfa

如果我运行命令:

    os.path.isfile('dfa.pyc') 

它返回 true。

有人可以解释一下如何导入 dfa.pyc 文件吗?

谢谢

I'm trying to learn python and I'm having trouble importing a module.
I have a .pyc file that I'm trying to import into idle shell called dfa.pyc

I have the file in a folder called xyz.
I navigate to this folder using:

    os.chdir('/Users/xxx/Desktop/xyz')

So now, if I try to run the command:

    from dfa import *

i get the error:

    ImportError: No module named dfa

If i run the command:

    os.path.isfile('dfa.pyc') 

it returns true.

Can someone explain how i can get the dfa.pyc file imported?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

酒绊 2024-12-20 07:11:45

我不认为 python 模块是根据你对 chdir 所做的事情加载的。模块是从启动 python shell 的文件夹和 PYTHONPATH 中的文件夹加载的。

如果您想动态加载模块,也许您可​​以检查 imp.loadmodule (示例位于底部页面)。

I don't think python modules are loaded I based on what you do with chdir. Modules are loaded from the folder you started the python shell and folders in PYTHONPATH.

If you want dynamically load modules maybe you can check imp.loadmodule (sample in the bottom of the page).

土豪我们做朋友吧 2024-12-20 07:11:45

您可以通过以下方式添加到代码中的 PYTHONPATH

sys.path.append('<newpath'>)
from dfa import *

我不相信更改当前目录对导入过程有任何影响,即使有,我也不确定这就是您想要的方式。

you can add to the PYTHONPATH in code by doing

sys.path.append('<newpath'>)
from dfa import *

I don't believe changing your current directory has any impact on the import process and even if it did, I'm not sure that's how you would want to do it.

月隐月明月朦胧 2024-12-20 07:11:45

来自 Brian Fitzgerald 的加载(和卸载)Python 模块


...这就是“取消导入”

del sys.modules["package"]
del package

from Brian Fitzgerald in Loading (and unloading) Python modules

"
... and this to “un-import”

del sys.modules["package"]
del package

"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文