Python language in an industrial environment

Специальность / Speciality: 1-31 03 08 Математика и информационные технологии / Mathematics and Information Technology

Направление / Direction: 1-31 03 08-01 Веб-программирование и интернет-технологии / Web Development and Internet Technologies

Специализация / Specialization: 1-31 03 08-01 03 Математическая информатика / Mathematical Informatics

Учебная дисциплина, модуль / Academic discipline, module: Язык программирования Python, модуль «Дисциплины специализаций» / Python programming language, module «Specialization disciplines»

 

Краткое содержание учебной дисциплины, модуля / Brief summary

Введение в Python. История и философия Python. Особенности языка и его применение в науке и индустрии. Основы синтаксиса.

Основные структуры данных. Типы данных: числа, строки. Структуры данных: списки, кортежи. Операции над структурами данных. Понятие изменяемости и неизменяемости данных.

Управляющие конструкции. Условные операторы и циклы. Вложенные циклы и условия. Понятие итерируемых объектов.

Функции и модули. Определение функций и возвращение значений. Аргументы функций и их типы. Области видимости переменных. Импорт модулей и использование стандартной библиотеки.

Объектно-ориентированное программирование. Классы и объекты. Конструкторы и деструкторы. Наследование и композиция. Инкапсуляция, полиморфизм и абстракция.

Исключения и обработка ошибок. Понятие исключений и их иерархия. Рекомендации по обработке исключений.

Работа с файлами и внешними ресурсами. Чтение и запись файлов. Работа с файловой системой.

Библиотеки для научных вычислений и анализа данных. Обзор библиотеки NumPy. Основы работы с массивами и матрицами. Введение в библиотеку Pandas. Основы анализа и обработки данных с помощью Pandas.

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

Introduction to Python. History and philosophy of Python. Features of the language and its application in science and industry. Basic syntax.

Basic data structures. Data types: numbers, strings. Data structures: lists, tuples. Operations on data structures. The concept of changeability and immutability of data.

Control structures. Conditional statements and loops. Nested loops and conditions. The concept of iterable objects.

Functions and modules. Defining functions and returning values. Function arguments and their types. Variable scopes. Importing modules and using the standard library.

Object-oriented programming. Classes and objects. Constructors and destructors. Inheritance and composition. Encapsulation, polymorphism and abstraction.

Exceptions and error handling. The concept of exceptions and their hierarchy. Recommendations for handling exceptions.

Working with files and external resources. Reading and writing files. Working with the file system.

Libraries for scientific computing and data analysis. Overview of the NumPy library. Basics of working with arrays and matrices. Introduction to the Pandas library. Basics of data analysis and processing using Pandas.

Data visualization and introduction to machine learning. Overview of the Matplotlib library. Basics of creating graphs and diagrams. Introduction to the Seaborn library for statistical visualization. An introduction to machine learning using Python.

Формируемые компетенции / The formed competences

Специализированные компетенции:

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

Specialized competencies:

– carry out design, development, testing and marketing of information solutions on the Internet, taking into account their subsequent scaling and processing of emerging large volumes of data.

Результаты обучения (знать, уметь, владеть) / Learning outcomes (know, can, be able)

В результате освоения учебной дисциплины студент должен

знать:

– основные концепции и принципы языка программирования Python;

– принципы объектно-ориентированного программирования;

– принципы работы с базовыми модулями Python;

уметь:

– использовать базовые типы данных Python; 

– создавать и использовать функции.

– использовать стандартные библиотеки Python для решения различных задач программирования;

– применять полученные знания для решения конкретных математических задач, анализа данных и автоматизации вычислительных процессов;

– самостоятельно изучать новые библиотеки и инструменты языка Python;

владеть:

– полученными знаниями для формирования и развития собственного профессионального опыта.

As a result of mastering the academic discipline, the student must

know:

– basic concepts and principles of the Python programming language;

– principles of object-oriented programming;

– principles of working with basic Python modules;

can:

– use basic Python data types; 

– create and use functions.

– use standard Python libraries to solve various programming problems;

– apply the acquired knowledge to solve specific mathematical problems, data analysis and automation of computational processes;

– independently learn new libraries and tools of the Python language;

be able to:

– apply acquired knowledge for the formation and development of one’s own professional experience.

Семестр изучения учебной дисциплины, модуля / Semester of study

5

5

Пререквизиты / Prerequisites

Знания, полученные при изучении дисциплин “Методы программирования” и “Технологии программирования” в предыдущих семестрах.

Knowledge gained from studying the disciplines “Programming Methods” and “Programming Technologies” in previous semesters.

Трудоемкость в зачетных единицах (кредитах) / Credit units

3 зачетные единицы.

3 credit units.

Количество аудиторных часов и часов самостоятельной работы / Academic hour of students’ class work, 

hours of self-directed learning

Всего 90 часов, из них 36 аудиторных часов и 54 часа самостоятельной работы.

A total of 90 hours, of which 36 academic hours of students’ class work and 54 hours of self-directed learning.

Требования и формы текущей и промежуточной аттестации / Requirements and forms of current and interim certification

Опрос, практические задания, контрольная работа.

Зачет.

Survey, practical tasks, verification work.

End-of-term tests test.