У меня есть список вакансий с зависимостями и там статус. Я хочу пройти каждую работу и наметить там зависимости как дерево. Конец дерева будет, когда оба родительских зависимостей являются статусом выполненного. Тогда нет необходимости далеко ходить. Я не уверен, следует ли мне использовать рекурсию, или если это действительно единственная возможность. Есть ли встроенные инструменты отображения или структуры данных, которые могут мне помочь? Я буду повторяться, возможно, около 10 000 рабочих мест.Python - сопоставление зависимостей заданий в древовидной структуре
псевдопользователей Код
def map_depends(job_depends):
for job in job_depends:
if job.status = done:
job_tree_map.append(job.name)
else:
map_depends(job.get('dependencies'))
def main():
for job in batch:
if job.get('dependencies'):
map_depends(job.get('dependencies'))
Визуальное описание того, что я говорю.
-> job_depends1.status = done
main_job -> job_depends3 = running -> job_depends6 = done
-> job_depends2 = running......job_depends2 -> jon_depends4 = done
-> job_depends5 = done
Ваш код выглядит немного несовместимым: 'job' vs' jobs', 'job.get (зависит)' vs 'job.get ('dependencies')'. – firegurafiku
Спасибо. Сделал коррекцию. – user3590149