Как использовать "neq" в Gremlin-Python? - PullRequest
0 голосов
/ 03 декабря 2018

У меня есть запрос Gremlin , который работает с консоли Gremlin

g.V("p1").as("this").out("ContributedTo").in("ContributedTo").where(neq("this")).groupCount()

Я хочу использовать его из скрипта Python

from __future__ import print_function  # Python 2/3 compatibility

from gremlin_python import statics
from gremlin_python.structure.graph import Graph
from gremlin_python.process.graph_traversal import __
from gremlin_python.process.strategies import *
from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection

graph = Graph()
g = graph.traversal().withRemote(DriverRemoteConnection('wss://neptunedbcluster.neptune.amazonaws.com:8182/gremlin','g'))

g.V('p1').as_('this').out('ContributedTo').in_('ContributedTo').where(__.neq('this')).groupCount()

И я получаю ошибка :

AttributeError: type object '__' has no attribute 'neq'

Как мне выразить Gremlin 'neq' в Python?

1 Ответ

0 голосов
/ 03 декабря 2018

neq является частью класса P, поэтому я должен импортировать его и использовать его

from __future__  import print_function  # Python 2/3 compatibility

from gremlin_python import statics
from gremlin_python.structure.graph import Graph
from gremlin_python.process.graph_traversal import __
from gremlin_python.process.traversal import P

from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection

graph = Graph()
g = graph.traversal().withRemote(DriverRemoteConnection('wss://neptunedbcluster.neptune.amazonaws.com:8182/gremlin','g'))

g.V('p1').as_('this').out('ContributedTo').in_('ContributedTo').where(P.neq('this')).groupCount()
...