【发布时间】:2014-09-30 04:11:43
【问题描述】:
如果mysql没有输出...
if record[0][0]:
会返回错误
IndexError: tuple index out of range
我知道解决此问题的唯一解决方案是:
try:
if record[0][0]:
# Do stuff
except IndexError:
pass
但这看起来像一个很重的包装脚本
只知道是否
record[0][0]
没有数据。 (没有价值)
有没有更轻松的事情可以做,例如..
if record[0][0] = ""
?
更新:
这是我的 MYSQL 代码:
a = _mysql.escape_string(a)
db=b()
db.query("select * from b where a='" + a + "' limit 1")
result = db.store_result()
record = result.fetch_row()
更新:
原来有效的是:
if record:
而不是
if record[0]:
或
if record[0][0]:
【问题讨论】:
-
如果你的记录是
None,没有输出时,你可以检查None -
您使用的是
fetchall()还是fetchone()?您能否展示如何从 mysql 获取数据以及record的样子?谢谢。 -
结果 = db.store_result() 记录 = result.fetch_row()
-
@user3880134 首先需要检查的是,查询是否返回了一些记录。我觉得
record不知何故没有数据,这是实际问题。先检查if record:。
标签: python python-3.x python-2.6