gpt4 book ai didi

python - gremlinpython - 以字符串形式返回 id 和标签

转载 作者:行者123 更新时间:2023-12-01 07:56:18 24 4
gpt4 key购买 nike

我在 Python 3.7.2 上使用 gremlinpython 3.4.1,当获得顶点/边响应时,它提供 <T.id: >对于 id 和 <T.label: 3>对于标签。我如何让它在响应中提供 id 和 label 的字符串值?我的目标是获取输出并生成 JSON

输出:

python3 stackoverflow.py
[{'name': ['USA'], 'parentname': ['USA'], 'shortname': ['US'], <T.id: 1>: 'country-us', 'parentid': ['country-us'], <T.label: 3>: 'Country'}]

代码:

from gremlin_python import statics
from gremlin_python.process.anonymous_traversal import traversal
from gremlin_python.process.graph_traversal import __
from gremlin_python.process.strategies import *
from gremlin_python.driver.driver_remote_connection import DriverRemoteConnection
from gremlin_python.process.traversal import T
from gremlin_python.process.traversal import Order
from gremlin_python.process.traversal import Cardinality
from gremlin_python.process.traversal import Column
from gremlin_python.process.traversal import Direction
from gremlin_python.process.traversal import Operator
from gremlin_python.process.traversal import P
from gremlin_python.process.traversal import Pop
from gremlin_python.process.traversal import Scope
from gremlin_python.process.traversal import Barrier
from gremlin_python.process.traversal import Bindings
from gremlin_python.process.traversal import WithOptions

CLUSTER_ENDPOINT = "removed"
PORT = "8182"
g = traversal().withRemote(DriverRemoteConnection('wss://' + CLUSTER_ENDPOINT + ':' + PORT + '/gremlin','g'))

response = g.V().has('name', 'USA').limit(1000).hasLabel('Country').valueMap(True).toList()
print(response)

顺便说一句 - 我尝试使用 .with_(WithOptions.ids)例如:

response = g.V().has('name', 'USA').limit(1000).hasLabel('Country').valueMap(True).with_(WithOptions.ids).toList()

我收到以下错误:

gremlin_python.driver.protocol.GremlinServerError: 599: {"requestId":"bf74df44-f064-4411-a1cb-78b30f9d2cf6","code":"InternalFailureException","detailedMessage":"Could not locate method: NeptuneGraphTraversal.with([1])"}

最佳答案

此外,对于已经给出的 project() 示例,如果您不能或不想指定属性名称,您可以执行以下操作:

g.V().has('name', 'USA').limit(1000).hasLabel('Country').
map(union(project('id','label').
by(id).
by(label),
valueMap()).unfold().
group().
by(keys).
by(select(values))) // select(values).unfold() if you only have single values

关于python - gremlinpython - 以字符串形式返回 id 和标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55963311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com