On December 12, 19, and 26, the eighth, ninth, and tenth meetings of the “Python at APVT” club took place. The meetings were held in room 318 from 11:15 to 13:00.

Eighth meeting

1. Roman Podoliaka. Basic (list, dict, set) and advanced collections in Python

Roma Podoliaka talked about basic collections in Python. The talk was accompanied by live examples in the Notebook.

image
Roman Podoliaka talks about collections in Python

Presentation for the talk: Collections in Python.pdf (270 KB). If you want to repeat all the experiments in the Notebook, here are the source files in an archive: Basic collections in Python.ipynb.zip (17 KB).

Why is knowing basic collections important? Because they are the foundation for modeling and solving any applied problem. An applied problem is never stated in this form: “Take a list of objects, sort it, and return the element at index 0.” Usually, applied problems sound like this: “Who in the group of students has the highest rating?” This is where you need abstract thinking: describe a student with a dict structure, put it into a list, call the sort function, and access the element with index 0.

2. Volodymyr Obrizan. Functional programming in Python

This talk is a translation of the article A. M. Kuchling. Functional Programming HOWTO. In Python, you can write in different programming styles: object-oriented, functional. Functional programming is representing the problem being solved as a composition of functions that have no internal state. The advantages of functional programming: modularity, ease of debugging and testing, the ability to reuse functions. Slides for the talk: Functional programming in Python.pdf (342 KB).

Ninth meeting

The ninth meeting was devoted to solving timed problems in pairs.

Five problems were proposed:

  1. Determine whether a triangle is right-angled.
  2. Return a list of all divisors of the number n, including one and the number itself.
  3. Reduce a proper fraction.
  4. Determine whether the sequence l is an arithmetic progression.
  5. Encrypt strings in a certain way.

Repository with the problem source files: https://bitbucket.org/obrizan/apvt-python-competition-2

Teams in the process of solving the problems:

image

Valentina, Nikita, and Alexander’s team solved all the problems faster than everyone else:

image

The winning team in the process of solving:

image

Tenth meeting

1. Volodymyr Obrizan. Web programming in Python on Google App Engine. Working with a database

At previous meetings, we had already discussed Google App Engine — a platform for creating web applications in Python in the cloud. This time we looked at how to pass information from the client to the server and save it in a database.

Link to the source texts: https://bitbucket.org/obrizan/gae-web-tutorial/src

Google has a very similar tutorial; you can master it on your own: https://cloud.google.com/appengine/docs/python/gettingstartedpython27/introduction

2. Valentina Pikalova. Solving Python Challenge together

http://www.pythonchallenge.com/ is a collection of problems to work through. The difference from other similar sites is that the problem statement is given “with a catch,” i.e., before solving anything, you first have to understand the problem. :)

image
Valentina talks about the problems

image
Club members solve problems together

3. Club members’ stories about taking courses

After solving the problems, we helped Tatyana figure out her homework — or, more precisely, why it would not start from the command line.

And the pre-New Year’s meeting ended with gifts. Svetlana Viktorovna gave us New Year’s cards, and Valentina gave us coloring books. :)

image


Previous meetings:

No. 7 05.12.2015 Summary of the Seventh Meeting of the “Python at APVT” Club
No. 6 28.11.2015 Summary of the Sixth Meeting of the “Python at APVT” Club
No. 5 21.11.2015 Summary of the Fifth Meeting of the “Python at APVT” Club
No. 3, No. 4 07.11.2015, 14.11.2015 Summary of the Third and Fourth Meetings of the “Python at APVT” Club
No. 2 31.10.2015 Summary of the Second Meeting of the “Python at APVT” Club
No. 1 24.10.2015 The first meeting of the “Python at APVT” club took place. Summary

How do you get news about meetings of the “Python at APVT” club?

Subscription to news about meetings of the “Python at APVT” club: http://bit.ly/python-apvt-reg The mailing list will be the main channel for information about meetings.

Groups on VKontakte and Facebook: https://vk.com/python.apvt and https://www.facebook.com/groups/python.apvt, respectively.

Site for questions and answers about Python and about the club: http://bit.ly/python-apvt-qa

Questions? You can contact me personally: volodymyr.obrizan@gmail.com