为什么print()上会出现双引号错误?

时间:2014-05-18 03:52:16

标签: python python-3.x pymssql

我正在学习使用Python 3.4连接到我的SQL Server数据库。我正在使用pymssql连接到我的数据库,其中一个例子是从表中选择数据并打印输出时抛出错误。

这不是所有代码。此代码的第一部分连接到数据库,如果表不存在,则在数据库中创建表。这很成功。建立了连接,创建了表格,我可以选择表格等等。

以下是相关代码:

cursor.execute('SELECT id, name FROM persons WHERE salesrep=%s', 'John Doe')
row = cursor.fetchone()
while row:
    print "ID=%d, Name=%s" % (row[0], row[1])
    row = cursor.fetchone()

conn.close()

Python显示的错误是第二个双引号:

print "ID=%d, Name=%s" % (row[0], row[1])

                     ^

我测试了SELECT语句,一切看起来都不错。据我所知,印刷看起来不错。那我错过了什么?

1 个答案:

答案 0 :(得分:0)

这是python3print是python3中的一个函数。这是正确的语法:

print("ID=%d, Name=%s" % (row[0], row[1]))

此外,您应该使用新的字符串格式语法:

print("ID={0}, Name={1}".format(row[0], row[1]))