python 报错TypeError: tuple indices must be integers or slices, not str 怎么解决

错误原因:
元祖的索引必须是整数或者切片,不能是字符,通过pymysql访问数据库,并查询数据
解决方法:
把Cursor关键字替换成DictCursor关键字 。

python 报错TypeError: tuple indices must be integers or slices, not str 怎么解决

文章插图
ictCursor的这个功能是继承于CursorDictRowsMixIn,在默认情况下cursor方法返回的是BaseCursor类型对象,BaseCursor类型对象在执行查询后每条记录的结果以列表(list)表示 。如果要返回字典(dict)表示的记录,就要设置cursorclass参数为MySQLdb.cursors.DictCursor类 。
这个参数也可在调用connect方法建立连接时设置,如下:
>>> conn = MySQLdb.connect(host='192.168.1.103', port=3306, user='testacc', pass
wd='test1234', db='1dcq', cursorclass=MySQLdb.cursors.DictCursor)
>>>conn.close()
例子:
>>> import MySQLdb
【python 报错TypeError: tuple indices must be integers or slices, not str 怎么解决】>>> conn = MySQLdb.connect(host='192.168.1.103', port=3306, user='testacc',
passwd='test1234', db='1dcq')
>>> cursor = conn.cursor()
>>> cursor.execute('SELECT * FROM pagesobject LIMIT 0, 1')

    推荐阅读