【问题标题】:How do I access the id and label values from gremlin-python valueMap如何从 gremlin-python valueMap 访问 id 和 label 值
【发布时间】:2021-12-03 06:11:32
【问题描述】:

问题

我正在使用 gremlin-python,当我执行时:

edge = g.E().valueMap(True).limit(1).toList()

例如,我得到了,

print(edge[0]) 会给 {<T.id: 1>: 68, <T.label: 4>: 'belongsTo'....

我自己的字段有字符串键,但对于 id 和标签字段,我不知道如何指定键。提供字符串版本"<T.id: 1>" 不起作用。

【问题讨论】:

    标签: python gremlin


    【解决方案1】:

    gremlin-pythonidlabel 字段由 gremlin_python.process.traversal 中的 T 键入

    因此,使用 T.id 和 T.label 作为键,例如,

    from gremlin_python.process.traversal import T
    
    ....
    
    edge = self.g.E().valueMap(True).toList()[0]
    print(edge[T.id], edge[T.label]) 
    

    将提供对 id 和标签字段值的访问。

    重要的旁注

    Vertex 和 Edge 的元素id通常应被您的代码视为不透明值。不要 假设它在所有图形数据库平台上都是一个整数。例如,neo4j 使用整数,而 Amazon Neptune 使用 id 的字符串值。

    【讨论】:

    • ID 并不总是应该被视为不透明的。一些实现允许用户定义 ID 值,这也提供了一种非常有效的方式来查找顶点或边。例如,Person 顶点的 ID 可能是唯一的成员编号。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多