当python文件中的代码在导入时运行吗?

埃姆雷姆拉

我有两个文件,分别是main.pyfoo.py导入foomain,我认为其中的行foo.py不会自动运行。

但是,当我PATH在in中添加一个可执行文件foo,并在其中调用mainfoo涉及应该在in的可执行文件时PATH,会出现错误:geckodriver可执行文件必须位于PATH中如果我将其添加到中PATH的导入之后main.py,它可以正常工作。以下是示例代码:

main.py

# some imports
from foo_file import foo

foo.main()

foo.py

import os

FILENAME = os.path.dirname(os.path.abspath(__file__))

os.environ["PATH"] += os.pathsep + os.path.join(FILENAME, "assets")

def main():
    # some work involves selenium

为什么第一次尝试不起作用并给出错误?谢谢。

tobias_k

这是一个疯狂的猜测,但是由于您要导入foo

from foo_file import foo

我认为这foo是在一个子目录中,例如

+- main.py
\- foo_file
   \- foo.py

因此,当您添加os.path.abspath(__file__)到PATH时,它将添加子目录的路径,而不是包含的目录的路径,该目录main.py可能是包含assets文件夹的目录,因为您说如果直接在PATH中添加PATH的代码就可以正常工作main

如果您printfoo.pymain.py文件中都添加了一致的,则可以轻松地检查(a)代码的执行时间和执行时间,以及(b)检索哪个路径,例如

print(__file__, os.path.dirname(os.path.abspath(__file__)))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何检查代码运行是直接通过文件运行还是通过在python中的其他文件中导入运行?

来自分类Dev

在Python中导入模块时运行函数

来自分类Dev

在 Python 中导入时执行代码

来自分类Dev

如何使Python Decorator在导入时不运行

来自分类Dev

运行并评估导入的文本文件作为Python代码

来自分类Dev

Python:导入的Tkinter程序会自行运行吗?

来自分类Dev

无法在init.d文件中获取在启动时运行的代码

来自分类Dev

SIFT可以实时运行吗?

来自分类Dev

在python中抑制库导入时的输出

来自分类Dev

代码工作在一个单元格中单独运行,但在我导入时不起作用

来自分类Dev

即时运行代码

来自分类Dev

Google Maps代码可以在Excel的Webbrowser控件中运行吗?

来自分类Dev

bat文件不在另一个使用Python的文件夹中时运行

来自分类Dev

从文件读取输入时,不是用Java读取文件中的所有行吗?

来自分类Dev

在Python中同时运行多个qthread

来自分类Dev

在 Python 中同时运行函数

来自分类Dev

如何在Mac OSX中同时运行多个python文件

来自分类Dev

关闭Python守护程序时运行代码

来自分类Dev

在joomla 3中,在用户注销时运行php代码

来自分类Dev

如何在 Django 中打开视图时运行代码

来自分类Dev

Python(scipy)从文本文件的导入时间

来自分类Dev

Python(scipy)从文本文件的导入时间

来自分类Dev

OSError: [Errno 24] python 导入时打开的文件太多

来自分类Dev

从文本文件导入时,DataSet中的缺少列

来自分类Dev

从文本文件导入时,DataSet中的缺少列

来自分类Dev

使用 Sqoop 导入时 Parquet 文件中的脏值

来自分类Dev

应用关闭时运行的代码

来自分类Dev

按住按钮时运行代码

来自分类Dev

每小时运行代码

Related 相关文章

热门标签

归档