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
http://obrizan.livejournal.com/20989.html№6 28.11.2015
http://obrizan.livejournal.com/19981.html№5 21.11.2015
http://obrizan.livejournal.com/19236.html№3, №4 07.11.2015, 14.11.2015
http://obrizan.livejournal.com/19196.html№2 31.10.2015
http://obrizan.livejournal.com/16536.html№1 24.10.2015
http://obrizan.livejournal.com/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 Вопросы? Можно обратиться ко мне лично: volodymyr.obrizan@gmail.com