Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python3导入函数_Python_Python 3.x - Fatal编程技术网

Python3导入函数

Python3导入函数,python,python-3.x,Python,Python 3.x,我以前成功导入过函数,但下面的内容让我感到困惑。也许,我只是对用python导入不太了解(我已经在自己的机器(Mac)上测试了以下原理,发现它是可行的。我只使用print语句创建fome函数,并以完全相同的方式调用它们。) 我正在运行一个脚本(train.py),该脚本从/src/models/models.py中的文件导入函数。使用src.models.models import中的*/src和train.py位于同一目录中 但是,每次运行python train.py时,我都会得到Modul

我以前成功导入过函数,但下面的内容让我感到困惑。也许,我只是对用python导入不太了解(我已经在自己的机器(Mac)上测试了以下原理,发现它是可行的。我只使用print语句创建fome函数,并以完全相同的方式调用它们。)

我正在运行一个脚本(train.py),该脚本从/src/models/models.py中的文件导入函数。使用src.models.models import中的
*
/src和train.py位于同一目录中

但是,每次运行
python train.py
时,我都会得到ModuleNotFoundError:没有名为“src”的模块

(脚本的来源)

同样的目录层次结构和语法也适用于我自己的计算机(同样,我使用了一些简单的函数和打印语句)。我在linux远程设备上运行train.py,在两台机器上都使用Python 3。有什么想法吗?谢谢

使用相对导入:

from models.models import *

JFYI:使用
import*
不是一个好的做法。您的
src/
文件夹是否包含
\uuuuuuuuuuuuuuuuuuuuuupy
文件?@GrandPhuba是的,在/src目录中有一个init.py。父目录/当前目录如何?@GrandPhuba/parent目录没有
\uuuuuuuuuuuuuuuuuuuuupy.py
文件。我得到了“没有名为'main.models'的模块:'main'不是一个包。请在不使用models.models import*中的尾随点的情况下尝试它,因为该点有效!”!为什么绝对导入不起作用,而相对导入起作用?我很想知道你是否已经弄明白了。谢谢退房