首页 > 解决方案 > 从另一个脚本导入函数

问题描述

'utf-8' codec can't decode byte 0x98 in position 16: invalid start byte我在尝试通过以下方式导入函数时遇到错误:

from Tutorials.Functions.Files import path_to_project_root

经过一番调查,我发现问题是由于对path_to_project_root函数Tutorials.Functions.Files本身的一些额外调用造成的。换句话说,我的Tutorials.Functions.Files样子是这样的:

def path_to_project_root(projectName)
# The function body
return smt
path_to_project_root("myProject")

我意识到path_to_project_root("myProject")当我在另一个脚本中导入它时调用它是问题所在,只需将其注释掉就可以了。我正在寻找这个问题背后的理由。

标签: pythonfunction

解决方案


这就是 Python 的工作原理,python 是一种脚本语言,你想让解释器知道的一切都必须先由解释器解释。

在这种情况下,您从 导入一些函数Files,解释器必须读取并执行它。

试想一下,如果您在path_to_project_root函数中进行一些导入,而不运行文件中的所有语句,您导入的模块可能无法正常工作。


推荐阅读