Найти в Дзене
Formalist

Апгрейд современного аналитика, или из каких блоков состоит экосистема Python

Когда мы начинаем изучать новую область, нам очень не хватает общего описания/очертания её границ. Поэтому обозначим шесть общих блоков, которые определят наборы инструментов для работы в среде Python. Опишем подробно каждый из блоков. 1. Интерпретатор Python c набором базовых библиотек Основная программа Python, с набором базовых библиотек. Этого достаточно для знакомства с синтаксисом и дальнейшего обучения. 2. Библиотеки расширения функционала Наборы функций в виде библиотек (файлов) Python для различных задач. В настоящий момент возможно найти библиотеку почти под любую вычислительную задачу. Примеры популярных библиотек: 3. Среда разработки Программа, в которой аналитику удобно формировать и запускать алгоритмы Python. Команды Python можно вносить и в командную строку, но сложные алгоритмы удобнее писать и развивать, когда существует: Вариантов таких программ много, например VS Code. https://code.visualstudio.com/download 4. Среда отладки Это сторонние программы, в которых уд
Оглавление

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

  1. Интерпретатор Python c набором базовых библиотек
  2. Библиотеки расширения функционала
  3. Среда разработки
  4. Среда отладки
  5. Среда исполнения
  6. Комп и его возможности

Опишем подробно каждый из блоков.

1. Интерпретатор Python c набором базовых библиотек

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

  • Бесплатен и для скачивания всегда доступен в сети, например, на сайте сообщества python.org https://www.python.org/downloads/
  • Периодически выходят обновления
  • Нужно обладать минимальными навыками установки программ
  • Желательно понимать, как пользоваться командной строкой

2. Библиотеки расширения функционала

Наборы функций в виде библиотек (файлов) Python для различных задач. В настоящий момент возможно найти библиотеку почти под любую вычислительную задачу.

  • Бесплатны, разрабатываются и поддерживаются разными открытыми сообществами.
  • Устанавливаются отдельно или в составе пакета дистрибутива (например, Anaconda) https://www.anaconda.com/products/individual
  • Есть некоторые требования при установке к версиям ранее установленных библиотек (подробнее в следующих постах)
  • Почти всегда существует сайт библиотеки с подробным описанием её предназначения, возможностей и примеров использования

Примеры популярных библиотек:

  • Pandas: https://pandas.pydata.org/
  • NumPy: https://numpy.org/install/
  • SciPy: https://www.scipy.org/about.html
  • Statsmodels: https://www.statsmodels.org/stable/index.html

3. Среда разработки

Программа, в которой аналитику удобно формировать и запускать алгоритмы Python. Команды Python можно вносить и в командную строку, но сложные алгоритмы удобнее писать и развивать, когда существует:

  • контроль синтаксиса,
  • цветовые схемы для текста,
  • удобный поиск и замена кода,
  • автозавершение кода,
  • подсказки и справка.

Вариантов таких программ много, например VS Code. https://code.visualstudio.com/download

4. Среда отладки

Это сторонние программы, в которых удобно проверять как работает алгоритм. Часто совмещена со средой разработки, но бывают и обособленные, или с меньшим набором функций для разработчика. Как пример, Jupyter Notebook. https://jupyter.org/install

Хотя в базовом наборе Python есть и свой модуль.

5. Среда исполнения

Разработанный алгоритм Python в виде файла можно стартовать на своей машине в той же среде разработки или с командной строки. Можно запустить с другой машины при условии, что там развёрнуты модули программы Python и нужные библиотеки.

Так же часто настраивают автоматизированную работу, устанавливая файлы с алгоритмами на удалённых серверах.

6. Комп и его возможности

Изучать Python для решения простых задач можно и на старых дровах, но решать задачи с большим объёмом данных и сложными вычислениями лучше на современном компе.

Сложные библиотеки анализа очень прожорливы до памяти (в т. ч. видео), частоты и количества ядер процессора.

Для продвинутого аналитика можно обозначить такие требования к железу:

  • процессор от 12 ядер от 3Ггц, с виртуализацией (что бы это не значило)
  • память поколения DDR4 или новее от 32Гб
  • видеокарты (для нейросетей) от 4Гб, но чем больше и свежее, тем лучше

P.S. Данные

Как деньги – не главное, но без них не обойтись. Все алгоритмы на основе данных и ради них.

Данные для Python можно:

  • генерировать алгоритмом,
  • получить по ссылке через библиотеку,
  • загрузить из файла,
  • считывать с датчиков или любых устройств, подключенных к компу в т.ч. по сети

Напишите, была ли полезна эта информация. О каком разделе хотелось бы узнать подробнее?