Python3如何将目录更改回导入

Python3如何将目录更改回导入,python,python-3.x,pycharm,Python,Python 3.x,Pycharm,我使用的是Python3,我需要更改我的目录以从文件导入函数。 我尝试从..d导入函数执行,,但我得到一个错误:ValueError:尝试了超出顶级包的相对导入 a ├── b | └── c.py ├── d.py 基本上,我希望c.py从d.py导入一个函数。 如果有帮助的话,我正在使用PyCharm。您可以使用sys.path.append(path)如: import sys sys.path.append('/my/path/to/a/') # Now just impor

我使用的是Python3,我需要更改我的目录以从文件导入函数。 我尝试从..d导入函数执行
,但我得到一个错误:
ValueError:尝试了超出顶级包的相对导入

a
├── b
|   └── c.py
├── d.py

基本上,我希望c.py从d.py导入一个函数。
如果有帮助的话,我正在使用PyCharm。

您可以使用
sys.path.append(path)
如:

import sys

sys.path.append('/my/path/to/a/')

# Now just import what you want from d.py (i.e. if d has MyClass)
from d import MyClass

您可以像以下那样使用
sys.path.append(path)

import sys

sys.path.append('/my/path/to/a/')

# Now just import what you want from d.py (i.e. if d has MyClass)
from d import MyClass

尝试为您的目录创建一个
\uuuuu init\uuuuuuuuuuuuuuuuuuuuupy


请参阅:

尝试为您的目录创建一个
\uuuu init\uuuuu.py


请参阅:

d.py
中,只需从a.b.c导入东西
。确保每个文件夹中都有
\uuuu init\uuuuuuuuuupy
文件。我不想让d.py获得函数,我想让c.py从d.py导入函数。
从a.d导入东西
中的
从a.b.c导入东西
。确保每个文件夹中都有
\uuuuu init\uuuuuuuuuuuy.py
文件。我不想让d.py获取函数,我想让c.py从d.py导入函数。
从a.d导入的东西对我不起作用。我的路径从我的C驱动器一直到“a”文件。当我导入该函数时,该函数将以红色下划线。即使从d.py导入函数执行
也会用红色下划线。我做错什么了吗?在这里起作用了。我只需要从windows路径使用/而不是\就可以了,比如
sys.path.append('C:/Users/Avell/Documents/…')
使用sys访问python中的包是不实际的,除非有很多父文件夹和子文件夹对我来说不起作用。我的路径从我的C驱动器一直到“a”文件。当我导入该函数时,该函数将以红色下划线。即使从d.py导入函数执行
也会用红色下划线。我做错什么了吗?在这里起作用了。我只需要从windows路径使用/而不是\就可以了,比如
sys.path.append('C:/Users/Avell/Documents/…')
使用sys访问python中的包是不实用的,除非有很多父文件夹和子文件夹。我导入的函数以红色突出显示。使用
from.d导入函数
也会导致错误:
ModuleNotFoundError:没有名为“\uuuu main\uuuu.d”的模块__main__;不是一个包
我要导入的函数以红色突出显示。使用
from.d导入函数
也会导致错误:
ModuleNotFoundError:没有名为“\uuuu main\uuuu.d”的模块__main__u;不是一个包