Skip to content

KAUST-Academy/python-crash-course

 
 

Repository files navigation

Binder

Python Crash Course

The objective of this course is to provide students with an experimental approach, through practical experience, with the Python programming language. The course directly supports the ‘modelling and simulation’ requirements of the International Baccalaureate Computer Science.

On completion of this course students will: recognize Python data types and be able to select an appropriate data type(s) for a problem; understand how to control the execution flow of Python programs; understand why it is important to properly organize code and how to do so in Python using functions and classes; have knowledge and appreciation of the different failure modes that are encountered when writing Python programs and how to minimize them in practice.

This course largely follows Python Crash Course, Third Edition, an introductory programming book from No Starch Press by Eric Matthes.

Lessons

Module 1

Understand various Python data types, such as strings, integers, and floats, as well as more complex data types such as lists and dictionaries. Participants with learn to create and manipulate instances of various Python data types from scratch in JupyterLab, Google Colab (or similar).

Module 2

Understand how to control the execution flow of Python programs. Participants will learn to implement control flow structures such as if statements, for loops, and while loops in Python programs.

Module 3

Understand how to properly organize Python code using functions and classes. Participants will learn to implement functions and classes in Python to properly organize code.

Module 4

Understand different ways in which Python programs can go wrong and know how to handle them in practice. Participants will learn how to debug Python programs, handle exceptions, and write proper tests.

Module 5

Capstone project

Additional Resources

I will keep a list of additional resources based on the interests of class participants.

Data Analysis

About

Online resources for Python Crash Course, 3rd edition, from No Starch Press.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 86.4%
  • Jupyter Notebook 8.1%
  • HTML 5.5%