Тестовое задание. Создать граф вывести в Лог (log) (текстовый файл). Задача из вершины 1 найти кратчайший путь к вершине 6. Решения название файла скрипта graph_shortest_path.py и log.
Данный код реализует поиск кратчайшего пути в графе с помощью алгоритма обхода в ширину (BFS). Программа строит граф на основе предоставленной строки, где каждая вершина представлена числом, за которым следует список соседей через запятую. Затем осуществляется поиск кратчайшего пути между заданными вершинами.
-
build_graph(graph_str) - Метод build_graph преобразует строку, представляющую граф, в словарь, где ключами являются вершины, а значениями - списки их соседей.
-
bfs_shortest_path(graph, start, end) - Метод bfs_shortest_path выполняет поиск кратчайшего пути в графе с помощью алгоритма обхода в ширину (BFS). Принимает на вход словарь graph, представляющий граф, и вершины start и end, между которыми осуществляется поиск пути. Возвращает кратчайший путь в виде списка вершин.
Страница https://www.python.org/downloads/ - спарсить таблицу «Python releases by version number» с заголовками «Release version», «Release date», «Download»(полная ссылка), «Release Notes»(полная ссылка). Формат выходного файла - данные должны сохраняться в формате .xlsx. Решения название файла скрипта parsing_website_py_org.py и .xlsx файл.
Данный скрипт позволяет собирать информацию о последних релизах Python с веб-страницы официального сайта Python. Он использует библиотеку Playwright для автоматизации веб-скрапинга и библиотеку Pandas для сохранения данных в файл Excel.
pip install pandas playwright
- scrape_python_releases(url) - Метод scrape_python_releases принимает URL веб-страницы с релизами Python и возвращает список словарей, каждый из которых содержит информацию о версии релиза, дате выпуска, ссылке на загрузку и ссылке на заметки о релизе.
- save_to_excel(data, filename) - Метод save_to_excel сохраняет данные в формате Excel. Принимает список словарей data, содержащий информацию о релизах Python, и имя файла filename, в который нужно сохранить данные.
Поиск всех названий компании и их id, вернуть кортеж данных ((“title”, id),(…)…). Данные: приложение “new_test_hw.json”. Решение название файла скрипта extract_companies.py и файл json new_test_hw.json.
Данный скрипт позволяет извлечь информацию о компаниях из JSON-файла и представить её в виде списка кортежей, где каждый кортеж содержит название компании и её идентификатор.
- extract_companies(data) - Метод extract_companies принимает данные в формате JSON и рекурсивно проходит по структуре данных, извлекая название и идентификатор каждой компании. Возвращает список кортежей, где каждый кортеж содержит название компании и её идентификатор.