Skip to content

BEPb/Python-100-days

Repository files navigation

Profile views GitHub top language GitHub language count GitHub code size in bytes GitHub repo size GitHub GitHub last commit

GitHub User's stars

Bot logo

Python-100 дней от новичка до мастера


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


День 01 ~ 15 - Основы языка Python

  • Введение в Python-История Python / Преимущества и недостатки Python / Области применения Python
  • Настройка среды программирования - среда Windows / среда Linux
  • Запустить программу Python из терминала - Hello, world / print function / run program
  • Используйте IDE- PyCharm / напишите несколько строк кода / запустите программу / выйдите из IDE
  • Комментарии - роль комментариев / однострочный комментарий / многострочный комментарий
  • Примеры:
    • 01.привет_мир.py
    • 02.рисуем_флаг.py
    • 03.рисуем_свинку.py
  • Переменные и типы - именование переменных / использование переменных / функция ввода / проверка типа / преобразования типа переменной
  • Числа и строки: целые числа / числа с плавающей запятой / комплексные числа / строка / основные операции со строками / кодировка символов
  • Операторы-математические операторы / Операторы присваивания / Операторы сравнения / Логические операторы / Операторы идентичности / Приоритет операторов
  • Примеры:
    • 01.переменные.py - присваивание переменных и операции над ними
    • 02.переменные.py - ввод переменных и операции над ними, простой вывод результатов
    • 03.переменные.py - ввод переменных и операции над ними, подробный вывод результатов
    • 04.переменные.py - присваивание переменных и определение их типа
    • 05.переменные.py - присваивание переменных вывод их значений и тип
    • 06.преобразователь_градусов.py - Преобразовать Фаренгейты в Цельсия
    • 07.расчет_окружности.py - Введите радиус, чтобы вычислить длину окружности и площадь круга.
    • 08.операторы.py - ввод переменных и операции над ними, подробный вывод результатов
    • 09.строки.py - операции над строковыми переменными
    • 10.високосный_год.py - ввод года и вывод: високосный или нет
  • Сценарии применения структуры ветвления-условие
  • простая инструкция if / if-else структура / if-elif-else структура / вложенная if
  • Примеры:
    • 01.дюймы_сантиметры.py
    • 02.перевод_оценок.py
    • 03.решение_функции.py
    • 04.бросить_кости.py
    • 05.расчет_налога.py
    • 06.треугольник.py
    • 07.аутентификация.py.py
  • Сценарии применения цикла for-in условие / while цикл / оператор прерывания / оператор продолжения
  • Примеры:
    • 01.for.py
    • 02.for.py
    • 03.for.py
    • 04.for.py
    • 05.for.py
    • 06.for.py
    • 07.while.py
    • 08.while.py
    • 09.угадай_число_до_100.py
  • Классический кейс: количество нарциссов / сотня денег и сотня цыплят / игра в кости
  • Практические вопросы:
    • 01.число_нарцисов.py
    • 02.сотня_цыплят.py
    • 03.игра_в_кости.py
    • 04.Фибоначчи.py
    • 05.идеальное_число.py
    • 06.простое_число.py
  • Роль функций - неприятный запах кода / инкапсуляция функциональных модулей с функциями
  • Определение оператора функции / имени функции / списка параметров / оператора возврата / вызова пользовательской функции
  • Вызов функции - встроенные функции Python / импорт модулей и функций
  • Параметры функции - параметры по умолчанию / параметры переменных / параметры ключевого слова / параметры именованного ключевого слова
  • Возвращаемое значение функции - нет возвращаемого значения / вернуть одно значение / вернуть несколько значений
  • Проблемы области - локальная область / вложенная область / глобальная область / встроенная область / ключевые слова, связанные с областью действия
  • Управление функциями с помощью модулей - концепция модулей / использование настраиваемых модулей для управления функциями / что происходит при конфликтах имен (один и тот же модуль и разные модули)
  • Примеры:
    • 01.общий_делитель_кратное.py
    • 02.встроенные_функции.py
    • 03.общие_модули.py
  • Использование строковых вычислений длины / индексации / нарезки / общих методов
  • Базовое использование списка с определением списка / использование таблицы для доступа к элементу / добавление элемента / удаление элемента / изменение элемента / срез / обход цикла
  • Общие операции со списком - объединение / копирование (копирование элементов и копирование массива) / длина / сортировка / поиск
  • Генерация списка использования диапазона для создания списка чисел / генерации выражений
  • Использование кортежей - определение кортежей / использование значений в кортежах / изменение переменных кортежей / кортежи и преобразование списков
  • Базовое использование множества - разница между множеством и списком / создать / добавить элемент / удалить элемент / пусто
  • Общие операции над множеством - пересечение / объединение / разность / симметричная разность / подмножество / надмножество
  • Основное использование словаря - характеристики словаря / создать словарь / добавить элементы / удалить элементы / принять значения / пусто
  • Общие операции со словарем - метод ключей () / метод значений () / метод items () / метод setdefault ()
  • Примеры:
    • 01.Фибоначчи.py
    • 02.бегущая_строка.py
    • 03.найди_наибольшее.py
    • 04.крестики-нолики.py
    • 05.треугольник_Ян_Хуэя.py
  • Классы и объекты - что такое класс / что такое объект / другие связанные объектно-ориентированные концепции
  • Определите базовую структуру класса / атрибуты и методы / конструктор / деструктор / метод str
  • Использовать объекты - создавать объекты / отправлять сообщения объектам
  • Инкапсуляция в Python / Документация класса в Python
  • Базовые упражнения - определение класса ученика / определение класса часов / определение класса графики / определение класса автомобиля
  • Атрибуты класса / атрибуты экземпляра / средства доступа к атрибутам / модификаторы атрибутов / средства удаления атрибутов / использование slots
  • Методы в методе класса-экземпляра / методы класса / статические методы
  • Перегрузка оператора -__ add__ / sub / or / __ getitem__ / setitem / len / repr / gt / lt / le / ge / eq / ne / contains
  • Отношения между классами (объектов) - ассоциация / наследование / зависимость
  • Наследование и полиморфизм - что такое наследование / синтаксис наследования / вызов родительского метода / переписывание метода / определение типа / множественное наследование / алмазное наследование и алгоритм C3
  • Примеры:
    • 01.Связь_между_объектами.py
    • 02.атрибуты.py
    • 03.атрибуты.py
    • 04.зависимости.py
    • 05.множественное_наследование.py
    • 06.множественное_наследование.py
    • 07.переопределение.py
    • 08.перегрузка_оператора.py
    • 09.унаследованные_приложения.py
    • 10.метод_экземпляра.py
  • Используйте tkinter для разработки программ с графическим интерфейсом
  • Используйте трехстороннюю библиотеку pygame для разработки игровых приложений
  • Примеры:
    • 01.графический_интерфейс.py
    • 02.игра_камнями.py
    • 03.анимация_движение.py
    • 04.игра_мячи.py
    • 05.игра_Gobang.py
    • 06.Змейка.py
    • 07.Звезда.py
  • Читать файл - читать весь файл / читать построчно / путь к файлу
  • Запись, перезапись файла / дополнительная запись / текстовый файл / двоичный файл
  • Обработка исключений - важность механизма исключения / try-except блок кода / блок кода else
    встроенный тип исключения / стек исключения / оператор повышения
  • Сохранение данных - Обзор файла CSV / Применение модуля csv / Применение формата данных JSON / Применение модуля json
  • Примеры:
    • 01.обработка_исключений.py
    • 02.обработка_исключений.py
    • 03.обработка_исключений.py
    • 04.обработка_исключений.py
    • 05.чтение_текст_файла.py
    • 06.чтение_текст_файла.py
    • 07.запись_текст_файла.py
    • 08.чтение_запись_изображений.py
    • 09.чтение_csv.py
    • 10.запись_csv.py
    • 11.чтение_json.py
    • 12.запись_json.py
  • Расширенные манипуляции со строками - escape-символы / исходные строки / многострочные строки / методы соединения и разделения / методы, связанные с разделением / модуль pyperclip / инвариантные строки и переменные символы Использование String / StringIO
  • Введение в регулярные выражения - роль регулярных выражений / метасимволов / экранирований / квантификаторов / группировка / утверждения нулевой ширины / ленивое сопоставление / использование модуля re для выполнения операций с регулярными выражениями (сопоставление, поиск, замена, захват)
  • Пример:
    • 01.операции_строки.py
    • 02.переворот_строки.py
    • 03.проверка_имени.py
    • 04.регулярное_выражение.py
    • 05.фильтрация.py
    • 06.разделение_строки.py
  • Концепция процессов и потоков - что такое процесс / что такое поток / сценарии многопоточного приложения
  • Использование функции ветвления процесса / модуля многопроцессорности / пула процессов / межпроцессного взаимодействия
  • Используйте модуль потоковой передачи / класс потока / класс блокировки / класс условия / пул потоков
  • Примеры:
    • 01.последовательная_работа.py
    • 02.много_процесс.py
    • 03.многопоточная_загрузка.py
    • 04.многопоточная_загрузка.py
    • 05.многопоточная_работа.py
    • 06.многопоточная_работа.py
    • 07.однопоточная_работа.py
    • 08.многопоточная_работа.py
    • 09.однопоточная_работа.py
    • 10.многопроцессорная_работа.py
    • 11.асихронная_работа.py
    • 12.асихронная_работа.py
    • 13.асихронная_работа.py
    • 14.курьер.py
    • 15.курьер.py
    • 16.многопоточная_загрузка.py
    • 17.генератор_чисел.py
    • 18.Фибоначчи.py
    • 19.межпроцессное_взаимодействие.py
  • Основы компьютерных сетей - История развития компьютерных сетей / Модель "TCP-IP" / IP-адрес
  • Режим сетевого приложения - режим «клиент-сервер» / режим «браузер-сервер»
  • Доступ к сетевым ресурсам на основе протокола HTTP - обзор сетевого API / доступ к URL / анализ данных в формате JSON
  • Сетевое программирование Python - концепция сокета / модуля сокета / функции сокета / создание TCP-сервера / создание TCP-клиента / создание UDP-сервера / создание UDP-клиента / модуля SocketServer
  • Электронная почта-протокол SMTP / протокол POP3 / протокол IMAP / модуль smtplib / модуль poplib / модуль imaplib SMS-сервис-вызов SMS-сервисный шлюз
  • Примеры:
    • 01.Многопоточное_скачивание.py
    • 02.временной-сервер.py
    • 03.временной-клиент.py
    • 04.файловый-сервер.py
    • 05.файловый-клиент.py
    • 06.сервер_времени_tcp.py
    • 07.клиент_времени_tcp.py
    • 08.сервер_udp.py
    • 09.клиент_udp.py
    • 10.сервер_времени_tcp.py
    • 11.чат-сервер.py
    • 12.чат-клиент.py
    • 13.почтовый-сервер.py
    • 14.почтовый-клиент.py
  • Чтение и запись файлов Excel
  • Чтение и запись документов Word - обработка текстового содержимого / абзацев / заголовков и нижних колонтитулов / обработка стилей
  • Используйте Pillow для обработки изображений, чтения и записи изображений / синтеза изображений / геометрического преобразования / преобразования цвета / эффекта фильтра.
  • Примеры:
    • 01.Excel.py
    • 02.Excel.py
    • 03.Word.py
    • 04.Word.py
    • 05.pillow.py
    • 06.pdf.py

День16 ~ День20- Продвинутый язык Python

  • Общая структура данных / Очередь / Стек / Использование генеративного (производного) создания / Вложенный список / сортировка по куче / сборник полезных итераторов / распространенные алгоритмы / Алгоритм сортировки (выбор, всплытие и объединение) и алгоритм поиска (последовательность и деление пополам)
  • Примеры:
    • example02.py
    • example01.py
    • test_example01.py
    • test_example02.py
  • Расширенное использование функций - Функция как "гражданин первого класса" / функции высшего порядка / лямбда-функции / области видимости и замыкания / декораторы / рекурсивная функция
  • Примеры:
    • 01.калькулятор.py
    • 02.рекурсивная_функция.py
    • 03.область_действия.py
  • Расширенные объектно-ориентированные знания - «Три столпа» / Взаимосвязь между классами / Сборка мусора / Магические свойства и методы / Метаклассы / Принципы SOLID / Шаблон проектирования GoF
  • Примеры:
    • example01.py
    • example02.py
    • example03.py
    • example04.py
  • Магические методы, связанные с итераторами и генераторами / два способа создания генераторов
  • Примеры:
    • example01.py
    • example02.py
  • Параллельное и асинхронное программирование - многопоточный / многопроцессорный / асинхронный ввод-вывод / асинхронный и ожидающий
  • Примеры:
    • example01.py
    • example02.py
    • example03.py
    • example04.py
    • example05.py
    • example06.py
    • example07.py

День 21 – 30 - Начало работы с веб-интерфейсом

День 31 ~ 35 - Развлечение с операционной системой Linux

  • История разработки операционной системы и обзор Linux
  • Основные команды Linux
  • Утилиты в Linux
  • Файловая система Linux
  • Приложение редактора Vim
  • Переменные среды и программирование оболочки
  • Установка программного обеспечения и настройка сервиса
  • Доступ к сети и управление
  • Другой связанный контент

День 36 ~ 40 - Основы баз данных и продвинутый уровень

  • Реляционная база данных MySQL
  • Обзор реляционных баз данных
  • Установка и использование MySQL
  • Использование SQL
  • Язык определения DDL-данных: создание / удаление / изменение
  • DML-язык манипуляции данными - вставить / удалить / обновить / выбрать
  • DCL-Data Control Language-grant / revoke
  • связанная информация
  • Теория Парадигмы - руководящая идеология для проектирования двумерных таблиц
  • Целостность данных
  • Согласованность данных
  • Управляйте MySQL на Python
  • Начало работы с базами данных NoSQL
  • Обзор NoSQL
  • Обзор Redis
  • Обзор Mongo

День 41 ~ 55 - Практический Джанго

День 41 - Быстрый старт Django

  • Механизм работы веб-приложения
  • HTTP-запрос и ответ
  • Обзор фреймворка Django
  • Начни через 5 минут

День 42 - углубленная модель

  • Конфигурация реляционной базы данных
  • Используйте ORM для выполнения операций CRUD над моделью
  • Управляйте использованием фона
  • Лучшие практики для моделей Django
  • Справочник по определению модели

День 43 - Статические ресурсы и запросы Ajax

  • Загрузить статические ресурсы
  • Обзор Ajax
  • Реализуйте функцию голосования с помощью Ajax

День 44 - Cookie и сессия

  • Внедрить отслеживание пользователей
  • Связь между файлом cookie и сеансом
  • Поддержка фреймворка Django для сеанса
  • Операции чтения и записи файлов cookie в функциях просмотра

День 45 - отчеты и логи

  • Измените заголовок ответа через HttpResponse
  • Используйте StreamingHttpResponse для обработки больших файлов
  • Используйте xlwt для создания отчетов Excel
  • Используйте reportlab для создания отчетов в формате PDF
  • Используйте ECharts для создания интерфейсных диаграмм

День 46 - Панель инструментов журнала и отладки

  • Журнал конфигурации
  • Настроить Django-Debug-Toolbar
  • Оптимизировать код ORM

День 47 - Применение промежуточного программного обеспечения

  • Что такое промежуточное ПО
  • Промежуточное ПО, встроенное в структуру Django
  • Пользовательское ПО промежуточного слоя и сценарии его применения

День 48 - Начало работы с интерфейсной и задней частью раздельной разработки

  • Вернуть данные в формате JSON
  • Визуализируйте страницу с помощью Vue.js

День 49 - Начало работы с архитектурой RESTful и DRF

День 50 - Архитектура RESTful и расширенный DRF

День 51 - Использовать кеш

  • Первый закон оптимизации сайта
  • Используйте Redis для предоставления услуги кеширования в проекте Django
  • Чтение и запись кеша в функции просмотра
  • Используйте декораторы для реализации кеширования страниц
  • Предоставить услугу кеширования для интерфейса данных

День 52 - Доступ к сторонней платформе

  • Управление формой загрузки файла и предварительный просмотр файла изображения
  • Как сервер обрабатывает загруженные файлы

День 53- Асинхронные задачи и задачи по времени

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

День 54 - модульное тестирование

День 55 - проект онлайн

  • Модульное тестирование на Python
  • Поддержка модульного тестирования фреймворком Django
  • Используйте систему контроля версий
  • Настроить и использовать uWSGI
  • Разделение динамической и статической конфигурации и конфигурации Nginx
  • Настроить HTTPS
  • Настроить разрешение доменного имени

День 56 ~ 60 - Разработка интерфейса данных с помощью FastAPI

  • Начните работу с FastAPI за 5 минут
  • Запрос и ответ
  • Доступ к реляционной базе данных
  • Внедрение зависимости
  • Промежуточное ПО
  • Асинхронизация
  • Развертывание виртуализации (Docker)
  • Проект актуальных боевых действий: проект запроса нарушения техники

День 61 ~ 65- разработка краулера

День 61 - Веб-сканеры и сопутствующие инструменты

  • Понятие веб-краулера и область его применения
  • Обсуждение законности поисковых роботов
  • Инструменты для разработки поисковых роботов
  • Состав гусеницы

День 62 - Сбор и анализ данных

  • Стандарты и трехсторонние библиотеки для сбора данных
  • Три способа синтаксического анализа страницы: синтаксический анализ регулярных выражений / синтаксический анализ XPath / синтаксический анализ селектора CSS.

День 63 - хранить данные

  • Как хранить большие объемы данных
  • Реализовать кэширование данных

День 64 - одновременная загрузка

  • Многопоточность и многопроцессорность
  • Асинхронный ввод-вывод и сопрограммы
  • Использование ключевых слов async и await
  • Применение трехсторонней библиотеки aiohttp

День 65 - Анализируйте динамический контент.

  • Обратный инжиниринг JavaScript
  • Используйте Selenium для получения динамического контента

День66 ~ 80- анализ данных

День 66 - Обзор анализа данных

День 67 - Подготовка окружающей среды

День 68 - Применение NumPy-1

День 69 - Применение NumPy-2

День 70 - Применение Панды-1

День 71 - Применение Панды-2

День 72 - Применение Pandas-3

День 73 - Применение Панды-4

День 74 - Применение Панды-5

День 75 - визуализация данных

День 76 - Основы теории вероятностей

День77 - корреляция и регрессия

День78- дисперсионный анализ и оценка параметров

День 79 - кластеризация и уменьшение размерности

День 80 - Методология анализа данных

День 81 ~ 90 - Машинное обучение и глубокое обучение

День 81 - Основы машинного обучения

День 82 - классификация ближайших соседей k

День 83 - Дерево решений

День 84 - Байесовская классификация

День 85 - Машина опорных векторов

День 86 - кластеризация K-средних

День 87 - Регрессионный анализ

День 88 - Введение в глубокое обучение

День 89 - Обзор Tensorflow

День 90 - Актуальный бой Tensorflow

День 91 ~ 100- Разработка командного проекта

Bot logo