Intermediate-level seminar for Python

Logo

Materials to brush up your Python skills

View the Project on GitHub xoolive/pyseminar

Objectives for the seminar

This seminar has been designed to provide materials for a 3-session Python seminar. It consists of several Python scripts and Jupyter notebooks with self-contained solutions, designed for every participant to proceed at their own pace.

The participant is expected to have a basic experience of programming languages, if possible with Python, and a decent scientific background with a good understanding of common algorithmic and programming design challenges.

After the seminar, the participant should be able to:

Participants are considered consenting adults. Enough material is provided to get proficient quickly and ask questions when needed. Obviously, the more assiduous you are, the better, and learning practices best suiting you are in your hands. In particular, it is perfectly acceptable:

Outline of the seminar

Be sure to set up your environment before coming to class.

Day Title
🏠 Setting up your environment
  Managing Python dependencies
1 Basic types and arithmetic
  Advanced data structures (optional)
  Numpy and Matplotlib
  Introduction to Pandas
  Grammar of graphics with Altair (optional)
2 List comprehensions
  Iteration with Pandas
3 Object-oriented programming and protocols with Pandas
  Solving puzzles (optional)
  Asynchronous programming (optional)

References

Programmation Python avancée

Some of the materials offered here is directly taken from the book
Programmation Python avancée.

The book (in French) is neither required nor really necessary for the seminar; it however brings a lot of advanced complementary materials for the curious reader.