Методы выходного дня Python — использование Python для создания данных о погоде в реальном времени

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

Его обширная стандартная библиотека и богатая экосистема сторонних пакетов позволяют ему преуспеть в различных областях, от веб-разработки и научных вычислений до анализа данных, искусственного интеллекта и автоматизации. Кроссплатформенная совместимость Python и активное сообщество делают его идеальным инструментом для решения разнообразных задач, позволяя разработчикам писать элегантный и эффективный код для широкого круга приложений.

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

Создание скрипта

Погода относится к атмосферным условиям, существующим в определенном месте в определенное время. Он охватывает различные элементы, такие как температура, влажность, атмосферное давление, скорость и направление ветра, облачность и осадки (дождь, снег, мокрый снег и т. д.). Погода постоянно меняется из-за взаимодействия между атмосферой Земли, солнечной энергией и географическими особенностями планеты.

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

В этой статье Python будет использоваться для получения ключевых данных о погоде в реальном времени из разных городов мира. Прежде чем мы начнем, вот полный код, который затем объясняется:

import requests
from datetime import datetime

api_key = 'YOUR_API_HERE'

city = input('Please enter city name (e.g London,GB or Paris,FR): ')

url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={api_key}'

response = requests.get(url)

if response.status_code == 200:
    data = response.json()
    temp = data['main']['temp'] - 273.1
    humid = data['main']['humidity']
    desc = data['weather'][0]['description']
    sunrise = data['sys']['sunrise']
    sunset = data['sys']['sunset']

    print('-----')
    print(f'Temperature: {temp:.2f} °C')
    print(f'Humidity: {humid} %')    
    print(f'Description: {desc}')
    print('Sunrise: ', datetime.utcfromtimestamp(sunrise).strftime('%H:%M:%S'), 'UTC')
    print('Sunset: ', datetime.utcfromtimestamp(sunset).strftime('%H:%M:%S'), 'UTC')
    print('-----')

else:
    print('Error fetching weather data')

Все, что вам нужно сделать, это скопировать и вставить его в ваш интерпретатор, а затем получить свой ключ API. Переменную api_key можно найти, перейдя на OpenWeatherMap.org и создав бесплатную учетную запись. Затем вы сможете увидеть свой ключ API (процесс не более 60 секунд). Когда вы увидите свой ключ API, просто поставьте его вместо переменной (сохранив свойство строки) следующим образом:

api_key = 'b105a0004042678dbe5b45d93p6345e25'

Когда вы запустите весь скрипт, вам будет предложено ввести название города, запятую, а затем код страны (например, Франция — FR, а Австралия — AU).

Вывод состоит из следующих данных:

  • Температура. Температура — это мера средней кинетической энергии частиц в веществе, например газе, жидкости или твердом теле. Проще говоря, это говорит нам, насколько что-то горячее или холодное. Когда частицы в веществе имеют более высокую кинетическую энергию, они движутся быстрее и распространяются больше, что приводит к повышению температуры. И наоборот, когда их кинетическая энергия ниже, вещество становится холоднее. Температура, которую вы видите, находится в градусах Цельсия.
  • Влажность. Под влажностью понимается количество водяного пара, присутствующего в воздухе. Это мера того, насколько воздух насыщен влагой. Когда воздух содержит большое количество водяного пара, он считается влажным, в то время как меньшее количество водяного пара делает воздух более сухим. Химидность обычно выражается в процентах.
  • Краткое описание. Это небольшая фраза, например, ясное небо или облачно.
  • Восход: это время восхода солнца. Оно выражается в UTC (всемирное координированное время).
  • Закат: это время, когда заходит солнце. Оно выражается в UTC (всемирное координированное время).

Вот вывод при создании текущей информации о Париже, Франция:

Please enter city name (e.g London,GB or Paris,FR): Paris,FR
-----
Temperature: 19.60 °C
Humidity: 95 %
Description: overcast clouds
Sunrise:  04:38:31 UTC
Sunset:  19:13:05 UTC
-----

Вот вывод при создании текущей информации о Сиднее, Австралия:

Please enter city name (e.g London,GB or Paris,FR): Sydney,AU
-----
Temperature: 16.21 °C
Humidity: 61 %
Description: clear sky
Sunrise:  20:38:13 UTC
Sunset:  07:22:38 UTC
-----

Вот вывод при создании текущей информации о Тунисе, Тунис:

Please enter city name (e.g London,GB or Paris,FR): Tunis,TN
-----
Temperature: 26.94 °C
Humidity: 44 %
Description: clear sky
Sunrise:  04:43:07 UTC
Sunset:  18:15:17 UTC
-----

Обычно я публикую статьи, в которых обсуждаются торговые стратегии, индикаторы и алгоритмы на языке Python или Pine Script. Если вам интересно прочитать более 1350 статей, обязательно подпишитесь на Medium по моей ссылке (которая поддерживает работу). Спасибо!