GithubHelp home page GithubHelp logo

alekseyen / python1c2020 Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 3.0 8.17 MB

Курс Python на кафедре 1С

Home Page: https://github.com/king-menin/python-course

Jupyter Notebook 99.54% Python 0.19% CSS 0.02% HTML 0.25%
mipt python 1c

python1c2020's Introduction

Python 1C course 2020 год

Программа курса

Часть 1. Синтаксис.

  • Лекция 1. Python Введение. Основные структуры языка.
    Описание: на первой лекции разбираются основные конструкции языка, последовательности выполнения операций, циклы, переменные, объекты и их свойства (Identity, Type, Value). Garbage Collector. Изменяемые и неизменяемые объекты. Стандартные контейнеры. Функции. Библиотека collections.
    Задание: условие в конце лекции 1.Deadline: 27.02.2020
  • Лекция 2. Python. Введение. Строки, кодировки, файлы.
    Описание: на второй лекции разбиаются кодировки, строки в python (стандартные функции str). Как работает интерпретатор со строками. Частично затрагиваются менеджеры контекста. Разбираются потоки ввода, вывода и ошибок.
    Примеры с лекции
    Задание: Знакомство со строками. Реализация алогритма передачи данных: часть 1, Deadline: 05.03.2020.
  • Лекция 3. Python. ООП.
    Описание: третья лекция включает разбор основных принципов ООП в питон. Классы и экземпляры. Наследование в питон и алгоритм MRO. Магические методы в питон. Объясняется как осуществляется доступ к атрибутам класса.
    Примеры с лекции
    Задание: Знакомство с магическими функциями в питон. Реализация классов CounterGetter, Vector: часть 2, Deadline: 05.03.2020.
  • Лекция 4. Области видимости. Замыкания. Декораторы.
    Описание: на лекции разбираются анонимные функции, области видимости переменных и контексты. Объяснение правила LEBG. Приводятся и объясняются сложные примеры замыканий с атрибутами и методами. Разбирается работа декораторов в питон. Стандартная библиотека functions. Классы декораторы и функции декораторы.
    Примеры с лекции
    Задание: написать следующие декораторы - кэширования результатов функции (@cached), проверки типов аргументов функции (@checked) и декоратор логирования выполнения функции (@Logger). Deadline: 12.03.2020.
  • Лекция 5. Итераторы и генераторы.
    Описание: на этой лекции мы узнаем, как работает цикл for, что такое итератор и протоколы итерирования. Как создавать собственные итераторы. Кратко будет рассмотрено такое свойство итеаторов как исчерпаемость. Объяснение устройства и работы генераторов. Встроенные генераторы map, filter, enumerate, zip. Стандартная библиотека для работы с генераторами itertools.
    Примеры с лекции
    Задание: разобраться со стандартными итераторами и механизмом работы генераторов. Deadline: 09.04.2020
  • Лекция 6. Дескрипторы и мета классы.
    Описание: на этой лекции вы почувствуете все мощь питона (всю боль) и узнаете, как работают декораторы property, что такое дескриптор данных. Подробно будет рассмотрен алгоритм получения атрибутов в питон, как использовать собственные дескрипторы данных в своей программе. Во второй части лекци будут рассмотрены следующие вопросы: что такое type в питон, как создаются классы (что происходит, когда мы пишем class SomeClass(object):), что такое мета класс, применение мета классов. В том числе будет рассмотрен "хороший метод" (more power!) создания дескриптора с помощью мета класса.
    Примеры с лекции

    Задание
    : напишите мета класс PropertyCreator для создания свойств класса. Напишите метакласс InstanceCountExeptioner, который будет следить за количеством экземпляров класса, использующих его. Напишите метакласс JSONClassCreator , который будет по json представлению строить новый класс и обратно. Deadline: 09.04.2020

Часть 2. Приложения.

  • Лекция 7. Python и WEB.
    Описание: в первой части лекции вы узнаете об "устройстве интернета". Клиент-серверное взаимодейстие. Краткое описание протокола http. "Вводные" слова об HTML или как браузеры показывают веб-странички. Будут рассмотрены запросы методами get и post. Как создать свой клиент на питон, или как сделать запрос данных данных у википедии или гугла. Рассказано как майнить данные и парсить HTML в питон (lxml и BeautifulSoup). Как написать собственный сервер на питон (bottle).
    Примеры с лекции

    Задание
    : предлагается создать сервер, который содержит в себе библиотеку книг. Также требуетсяпроверить гипотезу про статьи википедии. Deadline: 09.04.2020
  • Лекция 8. Python и data и ml.
  • Лекция 9. Faster python.Часть 1., Часть 2.
    Описание: в первой части данной лекции расказывается о том, как можно оценивать время работы программы и как ускорить свой код. Подробно разбирается cython. Также рассмотрен пример работы pypy. В последней части лекции объясняется как можно создавать свои модули для python на c/c++ с помощью ctypes или Python.h.

    Задание
    : Исследование ускорения питон кода. Deadline: Конец курса

Литература и полезные ссылки

книги:

ссылка на ссылки :)

python1c2020's People

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.