首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从cursor.fetchall()不带尾'L‘的打印结果

问从cursor.fetchall()不带尾'L‘的打印结果
EN

Stack Overflow用户
提问于 2017-09-25 20:04:24
回答 1查看 5.7K关注 0票数 4

我有一个python代码,它通过MySQLdb访问mysql来运行select语句。然后,我使用cursor.fetchall()将输出收集为数组,但问题是它在每个输出的末尾打印一个L,如下所示:

代码语言:javascript
复制
sql = "SELECT data1, data2  FROM table1, table2 ;"
cursor.execute(sql)
dataarray = cursor.fetchall()
print dataarray

>>> ((75379L, 45708L), ...)

但在我的桌子上,没有L的,只有数字。如何确保它只是在没有L的情况下获取和打印数据?我宁愿避免在字符串上使用[:-1],因为这样就可以将None值更改为Non。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-25 20:05:41

L指示long整数类型。在Python 2中,它会自动用于太大而不能表示为普通整数的值。

MySQLdb似乎总是返回long的:

虽然MySQL的整数列完美地转换为Python整数,但无符号整数可能会溢出,因此这些值被转换为Python长整数。

对这些值调用str()应该省略尾随的'L'。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46413320

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档