导入错误:无法从'mymodule'导入名称'mylist'



我一直在尝试解决我的多处理脚本,经过大约 8 个小时的尝试和失败,我终于想通了一些东西。我想导入一个包含同一目录中的列表的脚本。在我的主文件中有 2 个函数:第一个是我的multiprocessing函数,第二个是main.另一个文件中的列表是我的多处理Pool的迭代器,但由于某种原因,它说它在我的模块中找不到我的列表。

我的主文件有:

import mymodulename
import multiprocessing
def multiprocessingfunction(iteratornotactuallythename):
#my code here
def main():
pool = Pool(5)
results = pool.map(multiprocessingfunction, mylist#the one that python cant seem to find)

我尝试将其导入为*,像这样导入单个列表:from mymodulename import mylist我也尝试像这样导入它:import mymodulename. 当我尝试导入单个名称时,它给出了此错误:

ImportError: cannot import name _mylist_ from mymodulename

当我尝试正常导入它或使用*导入它时,出现此错误:

"AttributeError: 'function' object has no attribute mylist

我的所有文件都在同一个目录中

我的模块文件有:

def starting():
mylist = [contentsoffile]

刚刚尝试的回溯是:

File "E:anonargparseversion.py", line 16, in <module>
from mymodule import arrang
ImportError: cannot import name 'arrang' from 'mymodule'

mylist是函数starting()的局部变量,这意味着导入后它对其他模块不可见,要么将其放在全局范围内(与def starting()相同的缩进(,要么return mylist放在starting()的末尾,并使用starting()的返回值作为mylist

情况 1:

import mymodulename
import multiprocessing
def multiprocessingfunction(iteratornotactuallythename):
#my code here
def main():
pool = Pool(5)
results = pool.map(multiprocessingfunction, mymodulename.mylist)

案例2:

from mymodulename import mylist
import multiprocessing
def multiprocessingfunction(iteratornotactuallythename):
#my code here
def main():
pool = Pool(5)
results = pool.map(multiprocessingfunction,mylist)

如果收到错误,则应发布错误回调信息。不只是一句话。

相关内容

  • 没有找到相关文章