ImportError:无法导入名称<classname> </classname>

时间:2013-11-10 14:47:12

标签: python python-3.x importerror

我有这个:

import sys, struct, random, subprocess, math, os, time
from m_todo import ToDo

(rest)

结果是:

Traceback (most recent call last):
File "6.py", line 2, in <module>
from m_todo import ToDo
ImportError: cannot import name ToDo

我的m_todo模块:

import os

class ToDO:
    '''todo list manager'''

    def __init__(self):
            pass

    def process(self):
            '''get todo file ready for edition'''
            print(os.path.exists('w_todo.txt'),'\t\t\tEDIT THIS')

我读了一些类似的问题,这些问题提出了一些关于循环引用的问题,但事实并非如此。

我也看到了关于使用相对导入的建议,但尝试这导致了另一个错误:

Traceback (most recent call last):
File "6.py", line 2, in <module>
from .m_todo import ToDo
SystemError: Parent module '' not loaded, cannot perform relative import

这就像我第三次使用Python一样,所以这可能是一个愚蠢的错误,但是由于我以相同的方式导入其他模块而没有任何问题,这让我有些困惑。

那么......这里发生了什么?

1 个答案:

答案 0 :(得分:0)

您的课程称为ToDO(请注意大写), ToDo

修复导入:

from m_todo import ToDO

或类名:

class ToDo: