Python& Neo4j:检查空的statementresult

时间:2016-11-19 15:03:14

标签: python python-3.x neo4j

我正在使用python脚本来执行一个应该返回0..n结果的cypher语句。我使用foreach循环来获取所有值:

for column1 in results['col1']:
    # do some stuff

如果Statementresult为空,则不会执行循环 - 当然。我想先检查一下Statementresult。如果没有结果,python脚本将执行不同的操作,例如: G。打印信息。

我试图将statementresult与None(但它的一个对象,即使它是空的)进​​行比较,或者使用第一个索引。我在文档和在线寻找解决方案,但找不到任何东西。我怎样才能检查它是否空?是否也可以获得e。 G。第三个结果是否存在?

谢谢! 斯蒂芬

2 个答案:

答案 0 :(得分:1)

我找到了一种使用StatementResult类的内部方法peek()的方法。如果调用此方法,则会在结果对象中没有记录时引发错误。我将此代码包装在一个函数中,该函数可以将Result对象传递给它。

def isResultRecord(results):
    try:
        results.peek()
    except ResultError:
        return False
    else:
        return True

答案 1 :(得分:0)

if (results.peek() is None):
   # empty object