4

这可能很容易,但我真的在努力解决这个问题。我使用 gremlin python lib 和 aws neptune db。我知道顶点 id,我只想获取顶点属性之一的值(python 中的字符串类型),然后更新它。

我试图这样做:

print(g.V(event['securityEventManagerId']).values('sourceData'))
print(g.V(event['securityEventManagerId']).property('sourceData'))
print(g.V(event['securityEventManagerId']).property('sourceData').valueMap())
.....

但我只是打印一些 python gremlin 对象GraphTraversal,无法将值检索为string

谁能帮我吗?

4

2 回答 2

5

您必须使用终端步骤,没有它们您的查询将无法执行。

来自 tinkerpop文档

通常,当一个步骤连接到一个遍历时,会返回一个遍历。通过这种方式,遍历以流畅的单子方式构建。但是,有些步骤不返回遍历,而是执行遍历并返回结果。这些步骤称为终端步骤(终端),并通过以下示例进行说明。

在你的情况下,你应该这样做:

g.V(event['securityEventManagerId']).values('sourceData').next()
于 2019-10-07T09:50:51.303 回答
3

这是一个片段:

for p in g.V(v).properties():
   print("key:",p.label, "| value: " ,p.value)

其中 v 是您要检查的顶点。

于 2020-10-30T16:33:09.607 回答