- •Стиль программирования на языке Python.
- •Программа на Python. Ввод-вывод данных. Основные алгоритмические конструкции. Последовательные действия.
- •Идентификаторы, комментарии, логические и физические строки.
- •Встроенные типы данных. Целые и вещественные типы данных.
- •Типы: комплексные числа, логический
- •Встроенные функции для работы с разными типами данных.
- •Возможности модуля math
- •Оператор условия. Варианты написания оператора.
- •Операторы цикла: for, while.
- •Функции range, enumerate.
- •Операторы break, continue.
- •Строки, работа со строками, срезы, методы и функции для работы со строками
- •Списки. Создание списков, методы и функции для работы со списками. Методы join и split.
- •Кортежи. Создание кортежей, обращение к элементам кортежей.
- •Множества. Создание, добавление элементов. Методы и операции для работы с множествами.
- •Словари. Создание словарей, добавление элементов, обращение к элементам. Методы для работы со словарями.
- •Методы словарей
- •Именованные функции: определение и вызов.
- •Именованные функции Объявление функции и вызов
- •Аргументы функций: обязательные, ключевые, со значением по умолчанию, произвольной длины
- •Глобальные и локальные переменные.
- •Написание рекурсивных функций
- •Анонимные функции (lambda-выражение)
- •Понятие модуля. Модули в Python. Подключение модулей. Создание своего модуля и пакета модулей.
- •Использование псевдонимов
- •Модуль math, Модуль random
- •Модуль datatime, Модуль itertools
- •Модуль itertools
- •Модуль itertools. Бесконечные последовательности
- •Модуль itertools. Генерация комбинаций значений!
- •Оператор try ... Exept
- •Пример оператора try...Except.
- •Работа с текстовыми файлами: открытие файла, ввод, вывод данных
Кортежи. Создание кортежей, обращение к элементам кортежей.
Кортеж состоит из набора значений, разделенных запятой, например:
t = 1, 2, 3
print(t) #(1, 2, 3)
При выводе кортежи всегда заключаются в круглые скобки, для того, чтобы вложенные кортежи воспринимались корректно.
t = () # Создание пустого кортежа - пустые круглые скобки
t1 = tuple()
Скобки нужны, чтобы определить элемент как кортеж из одного элемента
s = (1,) # Создание кортежа из одного элемента - элемент в круглых скобках
t = (1, (2, 3, 4), 5) #Можно создавать вложенные кортежи
#Обращаемся к элементам кортежа по номеру
print(t[0]) #1
print(t[1]) #(2, 3, 4)
К кортежам можно применять операции и функции, общие для последовательностей
print("Длина кортежа", len(t)) #Длина кортежа 3
print("Есть ли в кортеже 1:", 1 in t) #Есть ли в кортеже 1: True
print("Номер элемента 1:", t.index(1)) #Номер элемента 1: 0
print("Срез", t[::2]) #Срез (1, 5)
НЕЛЬЗЯ ИЗМЕНИТЬ КОРТЕЖ, можно создать новый
#Добавление элемента в кортеж
print(t)
t = t + ("new element",)
print(t)
(1, (2, 3, 4), 5)
(1, (2, 3, 4), 5, 'new element')
Множества. Создание, добавление элементов. Методы и операции для работы с множествами.
Это неупорядоченные наборы простых объектов. Они необходимы тогда, когда присутствие объекта в наборе важнее порядка или того, сколько раз данный объект там встречается.
s = set() #Создание пустого множества s = {1, 3, 4} #Создание множества из элементов
#Добавление элемента в множество
s.add(10)
s.add(0)
s.add(7)
print(s)#элементы в множество помещаются в произвольном порядке
{0, 1, 3, 4, 7, 10}
Если функции set передать в качестве параметра список, строку или кортеж, то она вернёт множество, составленное из элементов списка, строки, кортежа. Например:
s = set("qwerty")
print(s)
{'r', 'w', 't', 'e', 'q', 'y'}
print("Количество элементов в множестве:", len(s)) # Количество элементов в множестве: 6
print("Наличие элемента 1 в множестве:", 1 in s) # Наличие элемента 1 в множестве: False
МЕТОДЫ И ОПЕРАЦИИ С МНОЖЕСТВАМИ:
Пусть A, B - множества.
A.isdisjoint(B) = истина, если A и B не имеют общих элементов.
A == B - True, если все элементы A принадлежат B, все элементы B принадлежат A.
A.copy() - копия множества A
A.add(elem) - добавляет элемент в множество.
A.remove(elem) - удаляет элемент из множества. Возникает ошибка KeyError, если такого элемента elem не существует в множестве А.
A.discard(elem) - удаляет элемент, если он находится в множестве.
A.pop() - удаляет первый элемент из множества. Так как множества не упорядочены, нельзя точно сказать, какой элемент будет первым.
Некоторые действия можно записать двумя способами: с помощью методов, применяемых к множествам и с помощью операций.
A.issubset(B) или A <= B - все элементы А принадлежат B.
A.issuperset(B) или A >= B - все элементы В принадлежат А.
A.union(B, ...) или A | B | ... - объединение нескольких множеств А, B, ... Объединением называется множество из элементов, которые принадлежат одному из множеств.
A.intersection(B, ...) или A & B & ... - пересечение множеств А, B, ... Пересечением множеств называется множество элементов, которые принадлежат всем множествам.
A.difference(B, ...) или A - B - ... - разность множеств. Разностью называется множество из всех элементов A, которые не принадлежат множествам B, ... .
A.symmetric_difference(B); A ^ B- симметрическая разность - это множество из элементов, встречающихся в одном множестве, но не встречающиеся в обоих.
A.update(B, ...); A |= B - добавление элементов множества В в множество А.
A.intersection_update(B, ...); A &= B - в множество А записывается пересечение множеств А и В.
A.difference_update(B, ...); A -= B - в множество А записывается разность множеств А и В, т.е. элменты множества A, которых нет в множестве B.
A.symmetric_difference_update(B); A ^= B - в множество А записывается множество из элементов, встречающихся в одном множестве, но не встречающиеся в обоих.
Рассмотрим примеры
a = {1, 2, 3, 4}
a.remove(1)#удаление элемента из множества
print(a)
{2, 3, 4}
a = {1, 2, 3, 4}
a.remove(0)#если элемента не существует, то выдается ошибка
a = {1, 2, 3, 4}
a.discard(0)#удаляет элемент.
#Если элемента в множестве нет, то ничего не происходит
print(a)
{1, 2, 3, 4}