py2neo詳細介紹第一章


1.1 節點和關系的對象

官網的例子,創建兩個節點,並為兩個節點創建關系。

from py2neo.data import Node, Relationship
a = Node("Person", name="Alice")
b = Node("Person", name="Bob")
ab = Relationship(a, "KNOWS", b)
print(ab)
# 結果為 (Alice)-[:KNOWS {}]->(Bob)

可以知道創建兩個標簽為"Person"的節點,並且設置屬性name,兩個節點的關系為"KNOWS"。

接下來是節點的一些操作:

print(a==b)
# 結果為False
print(a!=b)
# 結果為True
print(a['name'])
print(a['age'])
# 結果為 Alice和None 直接獲取屬性值,沒有的話則是返回None
a['age']=16
# 則是為a添加新的屬性'age',並賦值為16

1.2 子圖Subgraph對象

模仿官網的例子:

from py2neo.data import Node, Relationship
a = Node("Person", name="Alice")
b = Node("Person", name="Bob")
c=Node("Person",name='Jack')
ab = Relationship(a, "KNOWS", b)
ac=Relationship(a,'WORKWITH',c)

s=ab | ac
for i in s.nodes:
	print(i)
# 結果為:   (:Person {name: 'Alice'})
			(:Person {name: 'Bob'})
			(:Person {name: 'Jack'})
# '|'符號是進行合並的意思,把ab和ac的關系以及節點合並在一起。
for j in s.relationships:
	print(j)
# 結果為:
		(Alice)-[:WORKWITH {}]->(Jack)
		(Alice)-[:KNOWS {}]->(Bob)
# '&'符號的意思是合並,取相交的部分
s=ab & ac
for j in s.nodes:
	print(j)
# 結果為 (:Person {name: 'Alice'})

# '-'符號為取兩者不同的部分
s=ab - ac
for j in s.nodes:
	print(j)
# 結果為 (:Person {name: 'Bob'})
		(:Person {name: 'Alice'})

1.3 路徑Path對象和可遍歷Walkable類型##

w = ab + Relationship(b, "LIKES", c) + ac
print(w)
# (Alice)-[:KNOWS]->(Bob)-[:LIKES]->(Carol)<-[:WORKS_WITH]-(Alice)

博主開通了微信公眾號 “python做些事” 會定期更新python和AI知識,關注之后python技能直線上升


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM