December 31, 2015

Резюме восьмой, девятой и десятой встреч клуба "Питон на АПВТ"

12, 19 и 26 декабря состоялись восьмая, девятая и десятая встречи клуба "Питон на АПВТ". Встречи проходили в ауд. 318 с 11:15 до 13:00.

Восьмая встреча

1. Роман Подоляка. Базовые (list, dict, set) и продвинутые коллекции в Питоне

Рома Подоляка рассказал о базовых коллекциях в Питоне. Рассказ сопровождался живыми примерами в Ноутбуке.

Роман Подоляка рассказывает о коллекциях в Питоне

Презентация доклада: Коллекции в Python.pdf (270 КБ). Кто хочет повторить все эксперименты в Ноутбуке, то вот исходники в архиве: Базовые коллекции в Python.ipynb.zip (17 КБ).

В чем важность знания базовых коллекций? В том, что это основа моделирования и решения любой прикладной задачи. Никогда прикладная задача не ставится в такой форме: "Возьмите список объектов, отсортируйте, и верните элемент под индексом 0". Обычно, прикладные задачи звучат так: "У кого в группе студентов самый высокий рейтинг?" Вот здесь уже и нужно иметь абстрактное мышление, чтобы студента описать структурой dict, поместить в list, вызвать функцию sort, обратиться к элементу с индексом 0.

2. Владимир Обризан. Функциональное программирование на Питоне

Этот доклад — перевод статьи A. M. Kuchling. Functional Programming HOWTO. На Питоне можно писать в разных стилях программирования: объектно-ориентированном, функциональном. Функциональное программирование — представление решаемой задачи как композицию функций, не имеющих внутреннего состояния. Преимущества функционального программирования: модулярность, простота отладки и тестирования, возможность переиспользования функций. Слайды доклада: Функциональное программирование в Питоне.pdf (342 КБ).

Девятая встреча

Девятая встреча была посвящена решению задачек на скорость в парах.

Было предложено решить пять задач:

1. Определить, является ли треугольник прямоугольным.
2. Вернуть список всех делителей числа n, включая единицу и само число.
3. Сократите правильную дробь.
4. Определить, является ли последовательность l арифметической прогрессией.
5. Зашифровать строки определенным образом.

Репозиторий с исходниками задач: https://bitbucket.org/obrizan/apvt-python-competition-2

Команды в процессе решения задач:

Быстрее всех все задачи решила команда Валентины, Никиты и Александра:

Команда победителей в процессе решения:

Десятая встреча

1. Владимир Обризан. Веб-программирование на Питоне на Google App Engine. Работа с базой данных

На предыдущих встречах мы уже обсуждали Google App Engine — платформу для создания веб-приложений на Питоне в облаке. В этот раз мы рассмотрели, как можно передать информацию с клиента на сервер и сохранить ее в базе данных.

Ссылка на исходные тексты: https://bitbucket.org/obrizan/gae-web-tutorial/src

У Гугла есть очень похожий туториал, можно осовоить самостоятельно: https://cloud.google.com/appengine/docs/python/gettingstartedpython27/introduction

2. Валентина Пикалова. Коллективное прохождение Python Challenge

http://www.pythonchallenge.com/ — это коллекция задач на прохождение. Отличие от других подобных сайтов — постановка задачи дана "с подковыркой", т. е. перед тем, как что-то решать, сначала нужно понять задачу. :)

Валентина рассказывает о задачах

Члены клуба коллективно решают задачки

3. Рассказы участников клуба о прохождении курсов

После решения задачек мы помогли Татьяне разобраться с домашним заданием, а точнее, почему оно не запускается из командной строки.

А завершилась предновогодняя встреча подарками. Светлана Викторовна нам подарила новогодние открыточки, а Валентина подарила разукрашки. :)


Предыдущие встречи:

№7 05.12.2015 https://teletype.in/@obrizan/20989.html
№6 28.11.2015 https://teletype.in/@obrizan/19981.html
№5 21.11.2015 https://teletype.in/@obrizan/19236.html
№3, №4 07.11.2015, 14.11.2015 https://teletype.in/@obrizan/19196.html
№2 31.10.2015 https://teletype.in/@obrizan/16536.html
№1 24.10.2015 https://teletype.in/@obrizan/15820.html

Как получать новости о встречах клуба "Питон на АПВТ"?

Подписка на новости о встречах клуба "Питон на АПВТ": http://bit.ly/python-apvt-reg Почтовая рассылка — это будет основной канал информирования о встречах.

Группы Вконтакте и Фейсбуке: https://vk.com/python.apvt и https://www.facebook.com/groups/python.apvt соответственно.

Сайт для вопросов и ответов о Питоне и о клубе: http://bit.ly/python-apvt-qa

Вопросы? Можно обратиться ко мне лично: [email protected]