Slide 1

Slide 1 text

10 марта 2022 [email protected] Валерий Дмитриевич Олисеенко Ассистент кафедры информатики Введение в Python3 часть 2

Slide 2

Slide 2 text

2/16 2/16 Виртуальная среда python3 -m venv \path\to\new\virtual\NAME NAME\Scripts\activate -> deactivate

Slide 3

Slide 3 text

3/16 3/16 Виртуальная среда. PIP pip install -r /path/to/requirements.txt pip list — список установленных пакетов

Slide 4

Slide 4 text

4/16 4/16 Немного о Jupyter Notebook

Slide 5

Slide 5 text

5/16 5/16 Магические команды Магические команды Команда на строку % Команда на ячейку % %

Slide 6

Slide 6 text

6/16 6/16 Примеры магических команд 1/2 %run NAME.py — запуск внешнего кода %%time — таймер %%writefile example.py — запись в файл

Slide 7

Slide 7 text

7/16 7/16 Примеры магических команд 2/2 %pycat example.py — вывод кода %%html %%javascript — поддержка внешнего js-кода %precision N — точность после запятой

Slide 8

Slide 8 text

8/16 8/16 Работа с файлами в Python 3

Slide 9

Slide 9 text

9/16 9/16 Исключения в Python 3 try: X= 18 - “0” except TypeError: X=18 – 0 else: print(‘неизвестная ошибка’) finally: print(‘работа обработчика окончена’) Подробнее: https://docs.python.org/3/tutorial/errors.html#handling-exceptions

Slide 10

Slide 10 text

10/16 10/16 ООП в Python 3 class A(object): def func(self): pass arg = 1 def __init__(self, x, y) self.sum = x+y a = A(2,3) A.func2 = func2 # какая-то функция а = А

Slide 11

Slide 11 text

11/16 11/16 Статические методы class A(object): @staticmethod def hello(): print("Hello world!") A.hello() # Hello world! a = A() a.hello() # Hello world!

Slide 12

Slide 12 text

12/16 12/16 Класс методы class A(object): @classmethod def hello(cls): print('Hello, класс {}'.format(cls.__name__)) A.hello() # Hello, класс A

Slide 13

Slide 13 text

13/16 13/16 Что ещё можно? Подробнее 1: https://docs.python.org/3.7/reference/datamodel.html?highlight=getitem#special-method-names Подробнее 2: https://pythonworld.ru/osnovy/peregruzka-operatorov.html class Multi: def __call__(self, x, y): return x*y m = Multi() m(10, 10) # 100 m.__call__(10, 10) # 100

Slide 14

Slide 14 text

14/16 14/16 Полезные ресурсы для практики • https://www.hackerrank.com/ • https://www.codewars.com/?language=python • https://leetcode.com/ • https://www.codemonkey.com/courses/coding-chatbots/ • https://py.checkio.org/ • https://pythonworld.ru/ • Практическая статистика для специалистов Data Science: Пер. с англ. / П. Брюс, Э. Брюс. — СПб.: БХВ-Петербург, 2018. — 304 с.: ил. • Дж П. Вандер. Python для сложных задач: наука о данных и машинное обучение //СПб.: Питер. – 2018. — 576 с.

Slide 15

Slide 15 text

15/16 15/16 Задачи 1. Вручную создайте файл и заполните его кортежем. Считайте из него информацию с помощью функции open() и запишите результат в кортеж с типом Int 2. Напишите программу, которая считывает файл и выводит самое длинное слово в файле 3. Напишите программу, которая считывает файл и одновременно перезаписывает считанное в другой файл 4. Напишите программу, которая считывает случайную строку из файла и выводит на экран (Подсказка: используйте стандартный модуль random) 5. Опишите класс “Машина”, который имеет как минимум 3 атрибута и 3 функции, одна из которых является переопределением стандартного оператора

Slide 16

Slide 16 text

10 марта 2022 [email protected] Валерий Дмитриевич Олисеенко Ассистент кафедры информатики Введение в Python3 часть 2