select 个基于名称的顶点

select vertices based on name

我使用以下代码创建图表并添加节点。

g = Graph()
g.add_vertices(3)
g.vs["name"] = ["ABC","ABCD","ACD"]

我想从顶点名称包含 'AB' 的图中提取 select 个顶点。从上图来看,应该是return"ABC"和"ABCD"。有办法吗?

由于您没有指定图形将包含的节点数,我假设您不需要缩放。您可以使用 List Comprehension :

a = ["ABC","ABCD","ACD"] #List of vertices
#or in your case a = g.vs['name']

b = ["AB"]               #Pattern to be matched

match =[vert for patt in b for vert in a if patt in vert]

print match
#['ABC', 'ABCD']