【问题标题】:Checking Python Boto SimpleDB for empty result set检查 Python Boto SimpleDB 是否有空结果集
【发布时间】:2017-02-05 08:43:45
【问题描述】:

在 Boto 2 中查询 SimpleDB 时如何检查结果集是否为空?我可以在它进入 for 循环之前检查它吗?

rs = dom.select(query)

for j in rs:
  ...do something

【问题讨论】:

    标签: python python-3.x amazon-web-services boto amazon-simpledb


    【解决方案1】:

    返回的 ResultSet 是一个迭代器。您可以使用next() 检查它是否有任何值,如果有的话,它会从游标中获取第一个元素。如果为空,则会引发StopIteration 错误。

    rs = dom.select(query)
    
    try:
        rs.next()
    except StopIteration:
        print('Empty ResultSet')
    

    【讨论】:

      【解决方案2】:

      rs 是一个 Python 对象,你可以这样做吗?

      rs = dom.select(query)
      if len(rs) > 0:
          for j in rs:
            ...do something
      else:
          print("resultset is empty")
      

      【讨论】:

      • 我试过了,但我得到了:TypeError: object of type 'SelectResultSet' has no len()
      猜你喜欢
      • 2018-12-13
      • 2013-05-09
      • 2014-04-13
      • 1970-01-01
      • 2018-03-24
      • 2023-04-01
      • 2013-07-24
      相关资源
      最近更新 更多