Онлайн-образование. DDT

Содержание

Слайд 3

DDT

Вяземский Семён

DDT Вяземский Семён

Слайд 4

Содержание

Looping Techniques
Iterators
Generators
Работа с файлами
Context managers

Содержание Looping Techniques Iterators Generators Работа с файлами Context managers

Слайд 5

Loops

01

Loops 01

Слайд 6

Контейнеры

Контейнеры – это структуры данных, которые хранят элементы. Данные структуры данных хранятся

Контейнеры Контейнеры – это структуры данных, которые хранят элементы. Данные структуры данных
в памяти и их содержимое тоже. Примеры контейнеров:
Списки, очереди
Множества
Словари
Строки
Кортежи

Слайд 7

Loops. Пример.

# Prints out 0,1,2,3,4 and then it prints "count value reached

Loops. Пример. # Prints out 0,1,2,3,4 and then it prints "count value
5"
count=0
while(count<5):
print(count)
count +=1
else:
print("count value reached %d" %(count))
# Prints out 1,2,3,4
for i in range(1, 10):
if(i%5==0):
break
print(i)
else:
print("this is not printed because for loop is terminated because of break but not due to fail in condition")

Ключевые слова:
else
break
continue
pass

Слайд 8

Iterators, Generators

02

Iterators, Generators 02

Слайд 9

Как это работает? Iteration protocol.

>>> a = ['foo', 'bar', 'baz']
>>> for

Как это работает? Iteration protocol. >>> a = ['foo', 'bar', 'baz'] >>>
i in a:
... print(i)
...
foo
bar
Baz

Что происходит когда мы итерируемся используя for:
Вызывается метод iter() для получения итератора для “a”
Вызывается метод next() для получения каждого элемента из итератора по очереди
Выход из цикла, когда метод next() выбрасывает исключение StopIteration

Слайд 10

Iterable, Iteration, Iterator

Iterable – Объект, способный возвращать элементы по одному
у него есть

Iterable, Iteration, Iterator Iterable – Объект, способный возвращать элементы по одному у
__iter__() (iterator protocol) или __getitem__() (sequence protocol)
вызов iter() превращает в итератор
for вызывает iter() неявно, сохраняет итератор в безымянной переменной
Iteration – итерирование, цикличный процесс извлечения данных, объектов из коллекции (объекта итерации)
Iterator – Объект, представляющий последовательность данных
Содержит __iter__(), который возвращает себя же
Iterator так же iterable
Завершается после raise StopIteration

Слайд 11

Как это работает

Как это работает

Слайд 12

Iteration Protocol

Iteration Protocol

Слайд 13

Generator

Функция, которая возвращает итератор:
В ней есть yield
После использования выкидывает StopIteration (т.е. использовать

Generator Функция, которая возвращает итератор: В ней есть yield После использования выкидывает
можно один раз)
Может использовать next()
Хранит промежуточные состояния между вызовами yield

Слайд 14

yield

Если yield внутри функции, то она вернет генератор
Функция будет вызвана при начале

yield Если yield внутри функции, то она вернет генератор Функция будет вызвана
итерирования
Yield возвращает результат как элеменет генератора
Yield останавливает функцию до следующей итерации (вызова метода next())
Функция продолжает работы с предыдущего yield (с предшествующего состояния)

Слайд 15

Работа с файлами

03

Работа с файлами 03

Слайд 16

Типы файлов

Бинарные – любой другой файл, кроме текста, который может быть использован

Типы файлов Бинарные – любой другой файл, кроме текста, который может быть
другим приложением. Другими словами бинарный файл нужен для других приложений.
Текстовые – структурированная последовательность линий, каждая линия состоит из последовательности символов
Каждая линия заканчивается символом EOL – end of line. (не все редакторы его показывают, но он есть)
Текстовый файл для людей, бинарный для приложений.

Слайд 17

Режим Обозначение
'r' открытие на чтение (является значением по умолчанию).
'w' открытие на запись, содержимое файла удаляется,

Режим Обозначение 'r' открытие на чтение (является значением по умолчанию). 'w' открытие
если файла не существует, создается новый.
'x' открытие на запись, если файла не существует, иначе исключение.
'a' открытие на дозапись, информация добавляется в конец файла.
'b' открытие в двоичном режиме.
't' открытие в текстовом режиме (является значением по умолчанию).
'+' открытие на чтение и запись

Слайд 18

Полезные ссылки

https://habr.com/ru/post/132554/
https://realpython.com/python-for-loop/
https://anandology.com/python-practice-book/iterators.html
https://wiki.python.org/moin/Generators
https://www.pythonforbeginners.com/files/reading-and-writing-files-in-python
https://nvie.com/posts/iterators-vs-generators/
www.dabeaz.com/generators-uk/
http://www.dabeaz.com/generators/Generators.pdf
https://realpython.com/working-with-files-in-python/#traversing-directories-and-processing-files
https://www.w3schools.com/python/python_json.asp

Полезные ссылки https://habr.com/ru/post/132554/ https://realpython.com/python-for-loop/ https://anandology.com/python-practice-book/iterators.html https://wiki.python.org/moin/Generators https://www.pythonforbeginners.com/files/reading-and-writing-files-in-python https://nvie.com/posts/iterators-vs-generators/ www.dabeaz.com/generators-uk/ http://www.dabeaz.com/generators/Generators.pdf https://realpython.com/working-with-files-in-python/#traversing-directories-and-processing-files https://www.w3schools.com/python/python_json.asp

Слайд 19

Вяземский Семён

svvyazemsky@gmail.com

Вяземский Семён svvyazemsky@gmail.com
Имя файла: Онлайн-образование.-DDT.pptx
Количество просмотров: 24
Количество скачиваний: 0