我是一个python初学者,我正试图从一个python文件读取一个函数到另一个。但是我坚持导入错误。我的目录是这样的:
测试文件夹
- plot.py
- 安装文件夹包含(mapsetup.py,空__init __.py文件)
mapsetup.py我有以下代码:
def read_files (project_name):
extent_dir =(os.path.join (dir['extents_dir'],project_name, 'extent_' + project_name + '.shp') )
然后在plot.py我有这个
project_name = str(input())
sys.path.append('/Users/Documents/python/test/setup')
from setup.mapsetup import read_files
但是我一直得到这个错误:
importterror: cannot import name 'read_files' from 'setup.mapsetup'
假设存在一个名为read_files
(检查拼写)的函数。
在path中setup
有双重用途。所以删除其中一个。
:
# either
sys.path.append('/Users/Documents/python/test/setup')
from mapsetup import read_files # <-- removed
# or this
sys.path.append('/Users/Documents/python/test') # <-- removed
from setup.mapsetup import read_files
注意,如果你使用的是像vscode
这样的编辑器,智能感应通常会在你打字的时候捡起所有这些,所以你会知道你在正确的地方。很有帮助。