我在Python语言中使用大型数据集,我想在Python语言中的数据数组中创建Neo4j节点。因此,我天真地尝试这样做,如下所示。
(在Python脚本中)
Product_IDs = data_array1:1000 #它包含产品ID的列表
tot_node_num = len(Product_IDs) #它说明产品ID的总数
graph = Graph()
tx = graph.cypher.begin()
tx.append("FOREACH (r IN range(1,tot_node_num) | CREATE (:Product {ID:Product_IDsr}))")
tx.commit()
使用上面的语句,不能识别变量: tot_node_num和Product_IDs。如何向下传递我用python脚本创建的数组,以便在Neo4j图形数据库中创建节点?
谢谢!
发布于 2014-11-26 06:21:34
你完全正确-传递变量的最好方法是通过参数。但是请记住,虽然这适用于表达式和属性值,但参数不能用于标签和关系类型。为此,py2neo提供了cypher_escape函数(http://py2neo.org/2.0/cypher.html#py2neo.cypher.cypher_escape):
>>> from py2neo.cypher import cypher_escape
>>> rel_type = "KNOWS WELL"
>>> "MATCH (a)-[:%s]->(b) RETURN a, b" % cypher_escape(rel_type)
'MATCH (a)-[:`KNOWS WELL`]->(b) RETURN a, b'https://stackoverflow.com/questions/27124289
复制相似问题