Python: дорожная карта 2023 года, чтобы освоить все

Dec 01 2022
Питон может все. Все, включая науку о данных, машинное обучение, глубокое обучение, НЛП, обработку изображений и видео для обнаружения и сегментации, игры, Android, веб-приложения, настольный графический интерфейс, вы просто называете это.
Дорожная карта Python

Питон может все. Все, включая науку о данных, машинное обучение, глубокое обучение, НЛП, обработку изображений и видео для обнаружения и сегментации, игры, Android, веб-приложения, настольный графический интерфейс, вы просто называете это.

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

Дорожная карта Python 2023:

Эта карта ума суммирует все библиотеки (и основные концепции Python), которые вы можете изучить, чтобы освоить все это. Это не очень долгий срок. Вы должны быть в состоянии освоить все эти темы за более короткий промежуток времени, чем вы думаете, потому что python позаботится о большей части кода для вас благодаря своей ОГРОМНОЙ поддержке библиотек.

1. Начнем с основ Python:

  1. Узнайте все о переменных и работе со строками. Это важно для любой темы, которая появится позже.
  2. Условные операторы и как принимать программные решения
  3. Циклы и сосредоточьтесь на расширенном синтаксисе циклов for, таком как zip и enumerate. Это очень полезно, если вы хотите кодировать в стиле «Pythonic».
  4. Вы ДОЛЖНЫ освоить структуры данных, такие как списки и словари, менее важными структурами будут кортежи и наборы .
  5. Узнайте все о функциях и о том, как возвращать из них значения. Убедитесь, что вы понимаете области данных и глобальные переменные
  6. Изучите расширенные встроенные функции, такие как понимание списков, карты и лямбда-функции.
  7. Исключения необходимы для написания кода, максимально защищенного от сбоев.
  8. Управление каталогами , которое используется для создания деревьев каталогов для файлов вашего проекта. И это очень полезно для автоматизации задач, навигации по файлам и т. д. Прочтите об этом.

В мире современного программного обеспечения нельзя игнорировать важность поддерживаемого легко расширяемого кода.

Итак, вот что вам нужно знать:

  1. Классы и как создавать методы класса , переменные класса и инициализатор класса
  2. Object , который представляет собой не что иное, как класс в игре
  3. Наследование
  4. Супер ключевое слово
  5. Полиморфизм
  6. Инкапсуляция
  7. Если вы действительно хотите пройти лишнюю милю, ознакомьтесь с шаблонами проектирования.
  8. Это на самом деле не связано с ООП, но декораторы , которые являются специфическими методами Python, могут быть очень полезны при работе с большим количеством внешних библиотек, таких как Unittest. Который очень популярен для тестирования вашего программного обеспечения.

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

  1. .текст
  2. .csv
  3. .pdf
  4. .json
  5. .zip

Необходимо, чтобы математические вычисления были быстрыми, а python имеет репутацию медленного по сравнению с C/C++.

Ну, это не совсем так. В Python мы используем библиотеку под названием Numpy для выполнения почти любой сложной математической операции. Будь то умножение матриц, поиск элемента в массиве или поиск элементов Max/Min.

Библиотека огромна, но вот несколько основных моментов того, что вам нужно изучить, чтобы начать:

  1. Одиночные массивы
  2. Многомерные массивы
  3. numpy функции поиска
  4. numpy max/min функции
  5. функции сортировки numpy
  6. преобразование string_to_array и наоборот
  7. Расколоть
  8. Рандомизированные массивы
  9. Изменение формы массивов
  10. Инвертирование массива
  11. Методы умножения массивов

Pandas — это библиотека для работы с любыми табличными данными (такими как файлы excel, csv и т. д.).

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

  1. Панды данных
  2. Чтение CSV-файлов
  3. Фильтры данных
  4. Манипуляции с колонками
  5. Манипуляции со строками
  6. Переименование элементов
  7. Серии
  8. Внутренние функции построения графиков
  9. Создание CSV-файлов

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

Вот несколько основных моментов того, с чего необходимо начать:

  1. Понимание цветовых пространств (RGB, HSV, LAB)
  2. Чтение/запись изображений
  3. Показать изображения
  4. Бинаризация изображений
  5. Пороговые методы
  6. Манипуляции с изображением (поворот, масштабирование…)
  7. Преобразование массива в изображение и наоборот
  8. Расширение и эрозия
  9. Обнаружение контура
  10. Контурный рисунок
  11. Приближение формы
  12. Расчет площади контура
  13. Маскировка

Единственное, что я могу добавить сюда, это Object Tracking, взгляните на него.

7. Пользовательские интерфейсы Python (UI):

Как бы вы избавились от этого «представления кода» и вместо этого использовали некоторые интерактивные интерфейсы. Разве это не то, что объединяет все программное обеспечение?

Python имеет несколько форм пользовательского интерфейса.

  1. Интерфейсы командной строки, как следует из названия, основаны на окне командной строки, где вы вводите инструкции, которые будет выполнять ваш скрипт Python.
    Вы можете использовать библиотеку Argparse для этого
  2. Графический интерфейс рабочего стола или графические пользовательские интерфейсы. Это сделает ваше программное обеспечение похожим на любое другое программное обеспечение, которое вы загружаете и устанавливаете, с интерактивными кнопками, текстовыми полями, раскрывающимися списками и меню.
    Вы можете использовать PySimpleGUI или Tkinter.
  3. Это создаст пользовательский интерфейс в вашем браузере. Преимущество этого типа пользовательского интерфейса заключается в том, что вы можете просто развернуть свой проект в Интернете позже вместе с этим интерфейсом. Это преимущество нельзя найти в Argparse или Tkinter .

Наличие данных, будь то внутренние данные Python или внешние табличные данные, требует некоторой визуализации, верно?

Наиболее важные две библиотеки:

  1. Матплотлиб
  2. Сиборн
  1. Гистограммы
  2. Точечная диаграмма
  3. История Формирование
  4. Парные участки
  5. Данные для раскрашивания
  6. Несколько участков
  7. Живые сюжеты

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

А вот и многопоточность.

  1. Запуск потока
  2. Присоединиться
  3. Пул потоков
  4. Семафоры

10. Автоматизация задач Python

Автоматизация «скучных задач», таких как файл Excel, веб-формы и ведение журнала графического интерфейса пользователя, может быть легко автоматизирована с помощью python. Вы даже можете создавать скрипты Python, чтобы играть в свою любимую игру для Android/OS и собирать для себя все ежедневные награды!

Следующие библиотеки наиболее известны этим:

  1. Селен
  2. пиаутуи
  3. OpenCV может оказаться очень полезным при интеграции с вышеупомянутым
  1. Извлечение веб-страницы XPATH для взаимодействия с использованием селена
  2. заполнение текстовых полей
  3. Щелчок
  4. поиск элемента либо по xpath, либо с использованием изображения шаблона
  5. работа с выпадающими меню
  6. Обработка загрузки файлов
  7. сопоставление шаблонов обучения в OpenCV
  8. Python все в одном

Обучение с учителем, обучение без учителя, обучение с подкреплением — все эти захватывающие темы можно изучить, запрограммировав их с помощью Python. Поскольку программирование с практическим применением увеличит скорость обучения в 10 раз, рассмотрите возможность немедленного изучения алгоритма и экспериментов с python.

Две самые известные библиотеки для науки о данных и машинного обучения:

  1. острый
  2. sklearn , построенный на scipy
  1. Обучение под наблюдением:
    а. Наивный Байес
    б. Линейная регрессия
    c. SVM
  2. Неконтролируемое обучение:
    а. Кластеризация K-средних
    b. СПС
    в. ЛДА
    д. т-СНЭ
  3. Обучение с подкреплением:
    а. Q-обучение
    б. Генетическое обучение
  1. Точность
  2. Матрица путаницы
  3. Кривые AUC/ROC
  4. Поперечная складка

Эта тема основана на машинном обучении Python и в основном использует нейронные сети. Это уже целая область специализации.

Вам нужно проверить Tensor Flow, Keras и Pytorch.
Начните с Keras (построенного на потоке Tensor ), затем вы можете перейти к Pytorch .
Поскольку с функциями Keras проще обращаться, чем с Pytorch.

Вот первые алгоритмы, с которых вам нужно начать

  1. Глубокие искусственные нейронные сети (ИНС). Идеально подходит для задач прогнозирования регрессии
  2. Сверточные нейронные сети (CNN) идеально подходят для классификации изображений.
  3. Генеративно-состязательные сети (GAN). Основа Deep Fake и генерация поддельных данных
  1. Функции потерь и обратное распространение
  2. Функции активации
  3. Обучение/Тестирование Точность/Потери
  4. Тонкая настройка

13. Веб-дизайн Python:

Да, вы действительно можете создавать серверную часть для своих веб-страниц с помощью Python. На самом деле такие библиотеки, как Flask , могут быть наиболее удобными для начала работы. Честно говоря, было бы очень полезно иметь некоторые знания, по крайней мере, в HTML/CSS, чтобы иметь возможность проверить, что происходит через ваш Font-End (передняя часть представляет собой все броские кнопки и меню, которые вы видите на странице).

Однако, если у вас все в порядке с написанием супер-фиктивных страниц с использованием внутренних функций Flask, тогда будьте моим гостем и начинайте!

Вот с чего вам нужно начать:

  1. Маршруты
  2. Навигация
  3. Шаблоны
  4. Обновление элементов страницы через Python
  5. Сессия
  6. Аутентификация

Вы обязательно должны проверить этот курс. Это единственный курс в Интернете, который еженедельно обновляется новым разделом. Поскольку цель здесь состоит в том, чтобы этот курс включал в себя все, что вам когда-либо понадобится в python. Вам не нужно покупать 20 курсов, чтобы освоить Python.

Вы можете попросить инструктора добавить любую тему, касающуюся Python, и он добавит ее в течение недели!! Никаких дополнительных затрат!

Python All In-One 2023 ™️ — все, что вам когда-либо понадобится