При написании серии проектов, подходящих для начинающих программистов для изучения программирования на Python, другим проектом, который лучше всего подойдет для новичков, является создание приложения погоды. Это отличный проект для начинающих, поскольку он использует API для извлечения данных с удаленного сервера, что делает пользователь, знакомый с использованием API для получения данных с удаленного сервера.
Этот проект приложения погоды, который мы создаем, отображает текущие погодные условия для заданного города, введенного пользователем.

В этом проекте мы используем OpenWeatherMapAPI, который предоставляет данные о погоде для разных городов мира. Чтобы использовать API, нам необходимо предоставить ключ API, уникальный для нашей учетной записи. Мы назначаем наш ключ API переменной api_key в программе ниже.

Здесь пользователю предлагается ввести название города, для которого он хочет запросить информацию о погоде, как только пользователь вводит название города, оно назначается переменной города.

Затем создается URL-адрес конечной точки API путем форматирования переменных city и api_key в строку URL-адреса.

Библиотека python requests используется для отправки запроса GET в конечную точку API с помощью функции requests.get() путем передачи URL-адреса в качестве аргумента.

Переменная response содержит ответ сервера на наш запрос.

Если код состояния ответа сервера 200 от сервера, это указывает на успешный ответ. Как только мы получим успешный ответ, мы преобразуем данные ответа в формат JSON с помощью функции response.json() и назначаем их переменной данных. Затем мы используем функцию печати, чтобы распечатать соответствующую информацию о погоде для города, которая включает температуру, ощущение температуры и описание погоды.

Если код состояния ответа не равен 200, мы печатаем сообщение об ошибке с указанием кода состояния и причины сбоя.

Чтобы настроить ключ API, перейдите по ссылке https://openweathermap.org/appid OpenWeatherMap, чтобы получить ключ разработчика, который так хорош и при этом бесплатен.

weather_app.py
import requests
api_key = 'd45e2043a4446121012b702d2b214b21'
while True:
    city = input('Enter city name (or type "exit" to quit): ')
    if city.lower() == 'exit':
        print('Exiting weather app')
        break
    url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}&units=metric'
    response = requests.get(url)
    if response.status_code == 200:
        data = response.json()
        print(f"Weather information for {city}:")
        print(f"Temperature: {data['main']['temp']}°C")
        print(f"Feels like: {data['main']['feels_like']}°C")
        print(f"Weather description: {data['weather'][0]['description']}")
    else:
        print(f"Error: {response.status_code} - {response.reason}")

Результат погодного проекта

Примечание. Эта статья опубликована на сайте tutcoach.com в рамках проекта Python.