Python-无法访问类属性

Python-无法访问类属性,python,class,Python,Class,我正在编写一个从python访问mySQL数据库的类 代码如下: #!/usr/bin/python import MySQLdb import configparser class db(): def __init__(self): try: self.handler = MySQLdb.connect(host="localhost", user=user, passwd=passwd, db=dbname) s

我正在编写一个从python访问mySQL数据库的类

代码如下:

#!/usr/bin/python

import MySQLdb
import configparser

class db():

    def __init__(self):

        try:
            self.handler = MySQLdb.connect(host="localhost", user=user, passwd=passwd, db=dbname)
            self.cur = self.handler.cursor()
        except:
            print "Couldn't connect to db"


    def query(self, query):

        self.lastQuery = query
        self.res = self.cur.execute(query)

    def close(self):

        self.handler.close()
当我试图调用该类时,它会给我以下错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "db.class.py", line 6, in <module>
  class db():
File "db.class.py", line 25, in db
  self.res = self.cur.execute(query)
NameError: name 'self' is not defined
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“db.class.py”,第6行,在
类db():
文件“db.class.py”,第25行,以db为单位
self.res=self.cur.execute(查询)
NameError:未定义名称“self”
我一直在寻找,通常有人忘记用“self”来定义方法。但我包括在内

有人能帮我吗

谢谢

更新:


我检查了空格和制表符,这不是问题。

您的代码混合了制表符和空格,导致Python对缩进级别上的语句感到困惑。对
self.res
的赋值已在类级别结束,超出了它本打算作为其一部分的方法


停止混合标签和空格。打开编辑器中的“显示空白”,使问题更加明显,并考虑运行Python,使用<代码> -TT标志来对标签和空格的混合进行错误处理。

我不太确定空白。回溯清楚地表明,
self.res
赋值不属于任何方法。你确定你知道该找什么吗?如果只检查问题呈现版本的缩进,请注意标记呈现会将选项卡转换为空格。检查您的实际源文件。