簡體   English   中英

python類定義問題

[英]python class definition problrm

這是我嘗試連接到數據庫的第一個 python 代碼,我在名為 mysqlConnection.py 的 python 文件中定義了一個名為 Database 的類

但是當我運行代碼時,我收到此錯誤:

Traceback (most recent call last):
  File "mysqlConnection.py", line 3, in <module>
    class Database:
  File "mysqlConnection.py", line 27, in Database
    db = Database()

我的代碼是:

import MySQLdb

class Database:
        host = "localhost"
        user = "root"
        passwd = "root"
        db = "pitest"

        def __init__(self):
                self.connection = MySQLdb.connect( host = self.host,
                                                   user = self.user,
                                                   passwd = self.passwd,
                                                   db = self.db)
        def query(self, q):
                cursor = self.connection.cursor( MySQLdb.cursors.DictCursor )
                cursor.execute(q)

                return cursor.fetchall()

        def __del__(self):
                self.connection.close()




        if __name__ == '__main__':
                db = Database()

                q = "DELETE FROM users"
                db.query(q)

                q = """
                INSERT INTO users (title, fname, sname, age, email)
                VALUES ('A', 'Z', 'BIG Z', '20', 'raspberrypi@example.com'),
               ('B', 'X', 'BIG X', '30', 'raspberrypi@example.com'),
               ('C', 'Y', 'BIG Y', '24', 'raspberrypi@example.com'),
               ('A', 'W', 'BIG W', '29', 'raspberrypi@example.com')
                """
                db.query(q)
                q = """
                SELECT * FROM users WHERE title = 'A'
                """

                allreturnedusers = db.query(q)

                for user in allreturnedusers:
                        print "Found: %s " % user['fname']

有人可以幫我嗎?

您的代碼從該行開始縮進不正確

if __name__ == '__main__':

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM