顶点列表中的边-gremlin python

顶点列表中的边-gremlin python,python,gremlin,tinkerpop,gremlin-server,gremlinpython,Python,Gremlin,Tinkerpop,Gremlin Server,Gremlinpython,我有一个顶点ID列表。我想在他们中间找到所有可能的优势 我知道filter/where等方法在这里会有所帮助,但由于我使用的是gremlin-python,它们的实现必须有所不同 我试过: a = [0,2,4,6,8,10] g.V(a).outE().inV().hasId(a).toList() # This gives me [] g.V(a).bothE().filter(otherV().hasId(a)).toSet() # Traceback otherV is not de

我有一个顶点ID列表。我想在他们中间找到所有可能的优势

我知道filter/where等方法在这里会有所帮助,但由于我使用的是gremlin-python,它们的实现必须有所不同

我试过:

a = [0,2,4,6,8,10]

g.V(a).outE().inV().hasId(a).toList()
# This gives me []

g.V(a).bothE().filter(otherV().hasId(a)).toSet()
# Traceback otherV is not defined

g.V(a).bothE().otherV().hasId(a).toList()
# This gives me []

# Some information on edges :
g.E().toList()
# [e[16][0-Likes->8], e[17][8-Likes->0], e[18][4-Likes->8], e[19][2-Likes->6], e[20][6-Likes->2], e[21][12-Likes->10], e[22][10-Likes->12], e[23][10-Likes->14], e[24][14-Likes->8], e[25][6-Likes->4]]

我怎样才能做到这一点?这似乎是一个很容易的问题,但我仍然被困在这个问题上。

有很多方法可以做到这一点-这个怎么样

gremlin> a = ['marko','josh','lop']
==>marko
==>josh
==>lop
gremlin> g.V().has('name',within(a)).
......1>   aggregate('a').
......2>   outE().
......3>   filter(inV().where(within('a')))
==>e[9][1-created->3]
==>e[8][1-knows->4]
==>e[11][4-created->3]

本文以TinkerPop玩具图为例。首先,我们找到这些起始顶点并将它们聚合到一个名为“a”的列表副作用中。然后,我们遍历每个顶点的输出边,并过滤它们与“a”中的顶点的匹配项。

因为我使用的是gremlin python。此语句中有一个错误:
NameError:name'inV'未定义
(在第..3>行中),类似地,
中的
未定义。Remlin只是一个小精灵。除了特定的语言语法差异外,您使用的语言并不重要(例如,python将
中的
计算为保留字,因此对于Gremlin来说,它是
中的
)。在您的情况下,我认为您只需要获得正确的导入-请参见此处列出的导入:更具体地说,
inV()
只是
\uuuu.inV()
的缩写,
In()
只是
P.In()
的缩写。对于python,如果您想使用与上面相同的语法,您只需将这些语法分配给函数,如
inV=\uuuu.inV
\uuuu.inV()
工作,但是
\uuuuuuuu>内
是否仍有一个错误提示“内未定义”?还是另一个错误?如果您仍然遇到“未定义”问题,我不确定会出什么问题: