2024_01_11 Питон-2

Условные операторы

Циклы

while

Выход - break

Пропуск остатка шага и переход к началу - continue

Не считаются хорошей темой

for

Перебор элементов списка (в том числе символов строк)

for имяпеременной in list

Фигурных скобок нет, используется ступенчатая табуляция

Первая строчка (содержащая условие) оканчивается двоеточием

if: первоеусловие elif: второеусловие else:

for имяпеременной in range( a,b )

Тернарный оператор

Значение_1 IF условие ELSE Значение_2

сокращенная запись

можно напрямую писать вместо элемента списка, входных данных функции и т.п.

Питон может работать напрямую с массивом целиком

круглые и квадратные скобки

разобраться

блокнот 3.2 конец

Списки

Поддерживает смешанный тип элементов списка

перечисление в квадратных скобках через запятую

в том числе NaN aka отсутствующее значение, inf aka бесконечность

функция pop() возвращает последний элемент списка, и одновременно удаляет его из списка

может быть пустым

Кортеж (tuple)

перечисление в круглых скобках или без скобок вообще

Значения неизменяемы

функция reverse() переворачивает массив

массив. reverse()

функция index() - поиск места вхождения

функция insert() - вставка элемента в нужное место

массив. insert( куда, что )

sort() - сортировка

Словарь - пара ключ-значение

Вводятся пары ключ : значение через запятую в фигурных скобках

Поиск возможен только по ключу

В словаре нет гарантии сохранности сортировки, но это не важно

Пары данных являются кортежами

Работает и для словарей

функции

.keys() - только ключи

.values() -только значения

.items()

for key, val in dic.items() (что-то сделать)

функции

.count()

также можно вводить отдельные константы, т.е. кортеж из 1 элемента

Количество повторений

функции

синтаксис описания

def func_name(args):

-tab- func_body

-tab- return

лямбда-функции: сокращенный синтаксис в одну строку

имяфункции = lambda аргумент: возвращаемоезначение

вернуть можно сколько хотим значений через запятую

параметры через запятую сколько хотим (без указания типа)

тип возвращаемого значения можно явно указать до : через ->

сколько угодно строк с таб-отступом

сильно ускоряет написание кода

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

append() - добавить в конец списка

ООП

Class имя класса():

 -tab- def __init__ (self, остальные параметры через запятую):

self - указание на конкретный экземпляр класса

self. параметр1 = параметр1

self. параметр2 = параметр2

функция-конструктор, обязательна

-tab- def любая произвольная функция (self, остальные параметры):

Позволяет создавать экземпляры объекта с заданным набором и заданным значением параметров

Остальных параметров может не быть

Модели в продакшн передаются в виде классов

Параметры могут быть изменены через отдельные функции (описанные нами), или вызваны напрямую

Наследование

Можно наследовать отдельные методы класса

Class имя класса (родительский класс):

Сначала конструктор наследника передает параметры в родительский класс

 функция super.__init__

Функция потомка с тем же именем, что и в родительском классе, переопределяет родительскую

вызывает конструктор родительского класса с нужной частью параметров

если функция не переопределена, она будет взята (наследована) из родительского класса

Остальных параметров может не быть

также можно выполнять проверку данных на входе или делать что-то еще