Python connection to mysql error : unexpected indent

Python connection to mysql error : unexpected indent

我是 Python 的新手。

这是我编写的用于向 mysql table 插入一行的代码:

db = MySQLdb.connect(host="localhost",    # your host, usually localhost
                     user="me",          # your username
                     passwd="mepassword",  # your password
                     db="Database")   # name of the data base
 cursor = db.cursor()

f = '[%d/%b/%Y:%I:%M:%S %z]'
now = datetime.datetime.strptime(result[1], f)

sql = (
  "INSERT INTO Database.Table (Name, Time, Number, Size, Answer) "
  "VALUES (%s, %s, %s, %d, %d,  %s)"
)
data = (result[0],now.strftime('%Y-%m-%d %H:%M:%S'),int (result[3]),int (result[4]),result[2])
cursor.execute(sql, data)
db.close()

但是当我 运行 这段代码时,我得到了错误:

File "myscript.py", line 40
    cursor = db.cursor()
    ^
IndentationError: unexpected indent

我不明白这个错误。这怎么会是游标定义的问题呢?我使用默认的游标定义。或者这是 mysql 连接的问题?问题出在哪里?

试试这个:

db = MySQLdb.connect(host="localhost", user="me", passwd="mepassword", db="Database")
cursor = db.cursor()

f = '[%d/%b/%Y:%I:%M:%S %z]'
now = datetime.datetime.strptime(result[1], f)

sql = ("INSERT INTO Database.Table (Name, Time, Number, Size, Answer) " "VALUES (%s, %s, %s, %d, %d,  %s)")
data = (result[0],now.strftime('%Y-%m-%d %H:%M:%S'),int (result[3]),int (result[4]),result[2])
cursor.execute(sql, data)
db.close()

您的代码中有不正确的缩进。在 python 中我们不使用 brackets {}, 相反,我们使用 indents 作为层次结构。