Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- data = [(41, 61), (41, 51), (41, 49), (41, 59), (41, 58), (41, 47),
- (40, 60), (40, 59), (40, 50), (40, 51), (40, 47), (40, 56),
- (40, 58), (39, 59), (39, 61), (39, 46), (39, 47), (38, 57),
- (36, 58), (37, 56)]
- def add_value(dict_, key, value):
- '''
- Функция для добавления нового значения в словарь.
- Если по ключу в словаре ещё нет никакого значения,
- то по ключу в словаре создаётся множество,
- в которое добавляется первый элемент.
- dict_ - это словарь.
- key - ключ.
- value - значение.
- '''
- prev_value = dict_.get(key, None)
- if prev_value == None:
- dict_[key] = {value}
- else:
- dict_[key].add(value)
- def recursive_search(pid, data, res, id):
- '''
- Рекурсивная функция по обходу списка кортежей.
- '''
- add_value(res, id, pid)
- for pid_, id_ in data:
- if id_ == pid:
- recursive_search(pid_, data, res, id)
- result = {}
- for pid, id in data:
- recursive_search(pid, data, result, id)
- result
Advertisement
Add Comment
Please, Sign In to add comment