导入错误:无法导入名称。。。。用python

导入错误:无法导入名称。。。。用python,python,Python,我的课程如下: import skimage.io as io import numpy as np import scipy.io as sio import glob, re, os class convertImages: def __init__(self, directory): self.directory = directory def renameImages(self): path = self.directory

我的课程如下:

import skimage.io as io
import numpy as np
import scipy.io as sio
import glob, re, os

class convertImages:

    def __init__(self, directory):
        self.directory = directory

    def renameImages(self):
        path = self.directory
        i = 1
        files = [s for s in os.listdir(path) if os.path.isfile(os.path.join(path, s))]
        files.sort(key = lambda s: os.path.getmtime(os.path.join(path, s)))

        for file in files:
            os.rename(path + file, path + str(i) + '.png')
            i = i + 1
我想从我的Main调用这个类:

import convertImages
from convertImages import renameImages

ci = convertImages('Pictures/trialRGB')
但是得到这个该死的错误:
ImportError:无法导入名称重命名图像


我不知道这背后的愚蠢逻辑是什么。我已经按照教程做了所有的事情。请帮助我解决此问题。

您无法导入
convertImages
类中的
重命名图像
方法。根据您的代码,您不需要这样做

只需从convertImages import renameImages中删除
,您的代码就可以正常运行了

如果您需要使用
renameImages
方法,可以将其作为您使用的实例的一部分使用——只需像这样调用它:

ci.renameImages()
您需要将该方法作为实例的一部分运行——否则,它将无法工作


更新(来自评论):您还需要将
import convertImages
更改为
from convertImages import convertImages

“我已经按照教程完成了所有工作”。哪个教程?如果只从convertImages导入重命名图像中删除
,会发生什么情况?无论如何,你似乎没有使用这个方法。我必须调用这个该死的方法renameImages
renameImages
是一个
convertImages
类的方法。因此,您得到了错误。你为什么要把这样的导入放在你的文件中?它不能正常工作。下面是错误:Traceback(最近一次调用last):File“/home/hasan/Documents/Project/Main.py”,第10行,在ci=convertImages('Pictures/trialRGB')TypeError中:“module”对象不可调用你说得对,我错过了。您需要将convertImages import convertImages的第一行更改为
。第一个
convertImages
是您的模块,第二个是模块中的类声明。但是在这种情况下,我如何将参数发送到类?您不需要更改实例化类的代码,只需要更改import语句。顺便说一句,我还没有仔细查看您的代码本身,所以这可能也会中断。您是否删除了import convertImages行?由于模块和类具有相同的名称,这些导入语句将发生冲突。