- •Стиль программирования на языке Python.
- •Программа на Python. Ввод-вывод данных. Основные алгоритмические конструкции. Последовательные действия.
- •Идентификаторы, комментарии, логические и физические строки.
- •Встроенные типы данных. Целые и вещественные типы данных.
- •Типы: комплексные числа, логический
- •Встроенные функции для работы с разными типами данных.
- •Возможности модуля math
- •Оператор условия. Варианты написания оператора.
- •Операторы цикла: for, while.
- •Функции range, enumerate.
- •Операторы break, continue.
- •Строки, работа со строками, срезы, методы и функции для работы со строками
- •Списки. Создание списков, методы и функции для работы со списками. Методы join и split.
- •Кортежи. Создание кортежей, обращение к элементам кортежей.
- •Множества. Создание, добавление элементов. Методы и операции для работы с множествами.
- •Словари. Создание словарей, добавление элементов, обращение к элементам. Методы для работы со словарями.
- •Методы словарей
- •Именованные функции: определение и вызов.
- •Именованные функции Объявление функции и вызов
- •Аргументы функций: обязательные, ключевые, со значением по умолчанию, произвольной длины
- •Глобальные и локальные переменные.
- •Написание рекурсивных функций
- •Анонимные функции (lambda-выражение)
- •Понятие модуля. Модули в Python. Подключение модулей. Создание своего модуля и пакета модулей.
- •Использование псевдонимов
- •Модуль math, Модуль random
- •Модуль datatime, Модуль itertools
- •Модуль itertools
- •Модуль itertools. Бесконечные последовательности
- •Модуль itertools. Генерация комбинаций значений!
- •Оператор try ... Exept
- •Пример оператора try...Except.
- •Работа с текстовыми файлами: открытие файла, ввод, вывод данных
Операторы цикла: for, while.
Оператор цикла while
Оператор цикла while выполняет указанный набор инструкций до тех пор, пока условие цикла истинно. Истинность условия определяется также как и в операторе if. Синтаксис оператора while выглядит так.
a = 0
while a < 7:
print("A")
a += 1 #Буква “А” будет выведена семь раз в столбик.
Операторы break и continue
При работе с циклами используются операторы break и continue.
Оператор break предназначен для досрочного прерывания работы цикла while.
a = 0
while a >= 0:
if a == 7:
break
a += 1
print("A")
В приведенном выше коде, выход из цикла произойдет при достижении переменной a значения 7. Если бы не было этого условия, то цикл выполнялся бы бесконечно.
Оператор continue запускает цикл заново, при этом код, расположенный после данного оператора, не выполняется.
a = -1
while a < 10:
a += 1
if a >= 7:
continue
print("A")
При запуске данного кода символ “А” будет напечатан 7 раз, несмотря на то, что всего будет выполнено 11 проходов цикла.
Оператор цикла for
Оператор for выполняет указанный набор инструкций заданное количество раз, которое определяется количеством элементов в наборе.
for i in range(5):
print("Hello")
В результате “Hello” будет выведено пять раз.
Внутри тела цикла можно использовать операторы break и continue, принцип работы их точно такой же как и в операторе while.
Функции range, enumerate.
Range может быть очень полезной, если вам нужно выполнить действие определенное количество раз.
range ([<начало>,] <конец> [, <шаг>])
>>> for i in range (1, 5, 2): print (i, end = ' ')
1 3
>>> for i in range (5, 1, -2): print (i, end = ' ')
5 3
Встроенная функция enumerate. Периодически требуется пройти по элементам списка и при этом обрабатывать не только значение элемента, но так же и его порядковый номер в списке. Вот в этом случае она и понадобится.
enumerate (<объект> [, start = 0])
arr = [1, 2, 3, 4, 5, 6]
>>> for i, elem in enumerate (arr):
if elem % 2 == 0:
arr[i] *= 2
>>> print (arr) [1, 4, 3, 8, 5, 12]
Операторы break, continue.
Оператор continue начинает следующий проход цикла, минуя оставшееся тело цикла (for или while)
for i in 'hello world':
... if i == 'o':
... continue
... print(i * 2, end='')
...
hheellll wwrrlldd
Оператор break досрочно прерывает цикл.
for i in 'hello world':
... if i == 'o':
... break
... print(i * 2, end='')
...
hheellll
Строки, работа со строками, срезы, методы и функции для работы со строками
Списки. Создание списков, методы и функции для работы со списками. Методы join и split.
Списки - последовательность элементов. Элементы могут быть разнотипны. Списки - изменяемые последовательности. Элементы в списках нумеруются, нумерация начинается с 0.
Создание пустого списка:
sp = list()
sp = []
Для списков работают инструменты общие для последовательностей:
операторы in, not in
s += s1 объединение последовательностей
s = s n, s = n s повторение последовательности s n раз
Создание списка с помощью метода split
Можно ввести последовательность элементов через разделитель и при использовании метода split получаем список из строк
s = input().split()
print(s)
w 2 r 333 kkgk
['w', '2', 'r', '333', 'kkgk']
Если вводится последовательность чисел через пробел, то для того чтобы получить список ИЗ ЧИСЕЛ нужно каждый элемент преобразовать в число с помощью int или float. Для этого удобно использовать генератор.
#введем последовательность чисел через ТОЧКУ
#и преобразуем их в список из чисел
s = [int(x) for x in input().split('.')]
#получаем список ИЗ ЧИСЕЛ
print(s)
Метод join применяется к строке, в качестве параметра ему передается список ИЗ СТРОК. Метод возвращает строку, состоящую из элементов списка, разделенных строкой, к которой применяется join
In [12]:
s = ['a', 'ab', 'aer', '123']
stroka1 = '.'.join(s) #stroka1: a.ab.aer.123
print('stroka1:', stroka1)
stroka2 = ''.join(s)
print('stroka2:', stroka2) #stroka2: aabaer123
stroka3 = '-=-'.join(s)
print('stroka3:', stroka3) # stroka3: a-=-ab-=-aer-=-123
Функции для работы со списками
len(s) - длина списка (количество элементов)
max(s) - максимальный элемент списка
min(s) - минимальный элемент списка
sum(s) - сумма элементов списка
bool(s) – возвращает True, если список не пустой
s = list(string1) – преобразует строку string1 в список, где каждый элемент - это символ строки string1
Методы для работы со списками
s.index(x) - номер первого вхождения элементв x в список s, в случае отсутствия x в s – ошибка
s.index(x, k) - номер первого вхождения элементв x в список s, начиная с позиции k, в случае отсутствия x в s – ошибка
s.count(x) - количество вхождений элементв x в список s
s.append(x) - добавление элементв x в список s
s.extend(s1) - добавление элементов списка s1 в список s
s.insert(n, x) - вставить в список s нв позицию с номером n элемент x
x = s.pop(n) – получить n-й элемент списка, удалив его
s.remove(x) - удалить из s первое вхождение x, в случае отсутствия x в s – ошибка
s.reverse() - развернуть список в обратном порядке
s.sort() – отсортировать список s по возрастванию элементов
s.sort(reverse=True) – отсортировать по убыванию элементов
s.copy() - возвращает копию списка s