Ключове слово bipartite
У відео Ерік познайомив вас із ключовим словом 'bipartite'. Це ключове слово є частиною словника метаданих вузла й може бути призначене як під час додавання вузла, так і після його додавання. Пам'ятайте, що за означенням у двочастковому графі вузол не може бути з'єднаний із іншим вузлом у тій самій частині.
Тут ви напишете функцію, яка повертає вузли з указаної частини двочасткового графа. У цьому випадку релевантні частини двочасткового графа Github, з яким ви працюватимете, — це 'projects' і 'users'.
Ця вправа є частиною курсу
Середній рівень Network Analysis у Python
Інструкції до вправи
- Напишіть функцію
get_nodes_from_partition(), яка приймає два аргументи — двочастковий графGіpartitionграфаG— і повертає лише вузли з цієїpartition.- Ітеруйте всі вузли
G(не метадані) за допомогою циклуfor. - Зверніться до ключового слова
'bipartite'у словнику метаданих поточного вузла. Якщо воно дорівнюєpartition, додайте поточний вузол до спискуnodes.
- Ітеруйте всі вузли
- Використайте вашу функцію
get_nodes_from_partition()разом із функцієюlen(), щоб:- Вивести кількість вузлів у частині
'projects'графаG. - Вивести кількість вузлів у частині
'users'графаG.
- Вивести кількість вузлів у частині
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define get_nodes_from_partition()
def ____:
# Initialize an empty list for nodes to be returned
nodes = []
# Iterate over each node in the graph G
for n in ____:
# Check that the node belongs to the particular partition
if G.nodes[n]['____'] == ____:
# If so, append it to the list of nodes
____
return nodes
# Print the number of nodes in the 'projects' partition
print(____(get_nodes_from_partition(____, '____')))
# Print the number of nodes in the 'users' partition
print(____(____))