@@ -37,13 +37,22 @@ def __init__(self, node_id=None, alias=None, label=None, properties=None):
3737 self .id = node_id
3838 self .alias = alias
3939 self .label = label
40- self .properties = properties
40+ self .properties = {} or properties
4141
4242 def __str__ (self ):
43- return '({alias}:{label} {{{properties}}})' .format (
44- alias = self .alias ,
45- label = self .label ,
46- properties = ',' .join (key + ':' + str (quote_string (val )) for key , val in self .properties .items ()))
43+
44+ res = '('
45+ if self .alias :
46+ res += self .alias
47+ if self .label :
48+ res += ':' + self .label
49+ if self .properties :
50+ props = ',' .join (key + ':' + str (quote_string (val )) for key , val in self .properties .items ())
51+ res += '{' + props + '}'
52+ res += ')'
53+
54+ return res
55+
4756
4857class Edge (object ):
4958 """
@@ -55,23 +64,28 @@ def __init__(self, src_node, relation, dest_node, properties=None):
5564 """
5665 assert src_node is not None and dest_node is not None
5766
58- self .relation = relation
59- self .properties = properties if properties != None else {}
67+ self .relation = '' or relation
68+ self .properties = {} or properties
6069 self .src_node = src_node
6170 self .dest_node = dest_node
6271
6372 def __str__ (self ):
64- if len (self .properties ) > 0 :
65- return '({src_alias})-[:{relation} {{{properties}}}]->({dest_alias})' .format (
66- src_alias = self .src_node .alias ,
67- relation = self .relation ,
68- properties = ',' .join (key + ':' + str (quote_string (val )) for key , val in self .properties .items ()),
69- dest_alias = self .dest_node .alias )
70- else :
71- return '({src_alias})-[:{relation}]->({dest_alias})' .format (
72- src_alias = self .src_node .alias ,
73- relation = self .relation ,
74- dest_alias = self .dest_node .alias )
73+ # Source node.
74+ res = '(' + self .src_node .alias + ')'
75+
76+ # Edge
77+ res += "-["
78+ if self .relation :
79+ res += ":" + self .relation
80+ if self .properties :
81+ props = ',' .join (key + ':' + str (quote_string (val )) for key , val in self .properties .items ())
82+ res += '{' + props + '}'
83+ res += ']->'
84+
85+ # Dest node.
86+ res += '(' + self .dest_node .alias + ')'
87+
88+ return res
7589
7690class Graph (object ):
7791 """
0 commit comments