Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача по питону. May the force be with you

Андрей Огурчик Ученик (109), на голосовании 1 год назад
Что нужно сделать
Фанаты «Звёздных войн» (Star Wars) написали API по своей любимой вселенной. Ссылка на документацию: Documentation.

Внимательно изучите документацию этого API и напишите программу, которая выводит на экран (и в JSON-файл) информацию о пилотах легендарного корабля Millennium Falcon.

Информация о корабле должна содержать следующие пункты:

название,
максимальная скорость,
класс,
список пилотов.
Внутри списка о каждом пилоте должна быть следующая информация:

имя,
рост,
вес,
родная планета,
ссылка на информацию о родной планете.
Информация должна быть собрана в словарь с правильной структурой.
Голосование за лучший ответ
Станислав Малый Мыслитель (7922) 1 год назад
Для решения этой задачи нам понадобится использовать модуль `requests` в Python, чтобы отправить запрос к API и получить данные. Также мы будем использовать модуль `json` для работы с данными в формате JSON.

Вот пример программы, которая выполняет все требуемые действия:

```python
import requests
import json

def get_pilots():
url = " [ссылка заблокирована по решению администрации проекта] "
response = requests.get(url)
data = response.json()

pilots_list = []
for pilot_url in data["pilots"]:
pilot_response = requests.get(pilot_url)
pilot_data = pilot_response.json()
planet_response = requests.get(pilot_data["homeworld"])
planet_data = planet_response.json()

pilot = {
"name": pilot_data["name"],
"height": pilot_data["height"],
"mass": pilot_data["mass"],
"homeworld": {
"name": planet_data["name"],
"url": pilot_data["homeworld"]
}
}
pilots_list.append(pilot)

starship_info = {
"name": data["name"],
"max_speed": data["max_atmosphering_speed"],
"class": data["starship_class"],
"pilots": pilots_list
}

return starship_info

def main():
starship_info = get_pilots()
print(json.dumps(starship_info, indent=4))

with open("starship_info.json", "w") as file:
json.dump(starship_info, file, indent=4)

if __name__ == "__main__":
main()
```

После запуска этой программы будет выведена информация о пилотах корабля Millennium Falcon и сохранена в файл `starship_info.json`. Убедитесь, что у вас установлены модули `requests` и `json`, чтобы программа работала корректно.
Андрей ОгурчикУченик (109) 1 год назад
Спасибо)))
Влад Пикулин Ученик (179) 10 месяцев назад
Решение, только вместо \12\ в конце ссылки, \10\ прописать.
Похожие вопросы