为了解决最简单的编码问题,我不得不将python脚本从python2重写到python 3。我不得不从mysqldb迁移到pymysql,这似乎使用了相同的语法。我访问了pymysql的github1站点,下面的示例注意到,当查询结果是一个元素时,它返回一个JSON对象,但当它返回多个JSON对象时,它返回一个列表。
如果总是返回一个包含0、1或任何数目的元素的列表,难道不是更一致吗?为什么要这样做?
注意:为了避免pymysql中的这种行为,只需从以下位置删除cursorclass参数:
# Connect to the database
connection = pymysql.connect(host='localhost',user='user',
passwd='passwd', db='db', charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor)发布于 2015-06-06 14:23:09
根据JSON规范,这种行为是由于v1.0rc1中的一个突变造成的:
突然改变:奇异的资源对象现在应该用JSON对象而不是数组来表示。这允许在请求和响应文档以及PUT/POST请求和修补操作中进行对称表示。它还简化了不支持批处理操作的实现(即它们可以允许对象而不是数组)。
你可以看看这里
https://stackoverflow.com/questions/30683967
复制相似问题