python_for_scientists icon indicating copy to clipboard operation
python_for_scientists copied to clipboard

Python Open Courseware for Scientists and Engineers

Python for Scientists

Python Open Courseware for Scientists and Engineers

Software is a tool of the modern world. For many scientists and engineers, software has become the tool and Python has become the language. This class is free courseware designed to get scientists and engineers up to speed on Python and productive.

What This Class is

The purpose of this class is to provide a practical introduction to the Python language in general and more specifically to the Python libraries used every day by scientists and engineers.

What This Class is Not

This class is not meant to provide a rigorous computer science background. To get started on that, here are three of my favorite books: SICP, Intro to Algorithms, Code Complete.

Syllabus

Setup and Introduction

  • Introduction

Learning the Python Language

  • Variables
  • Control Structures
  • Data Structures
  • Functions and Modules
  • Advanced Strings
  • Lambda and Looping Faster
  • Object-Oriented Programming, Part 1
  • Object-Oriented Programming, Part 2
  • The Craftsmanship of Coding

Python Standard Libraries

  • Batteries Included, Part 1
  • Batteries Included, Part 2

Third-Party Libraries

Basic (Data) Science Tools

  • NumPy Arrays
  • matplotlib for Plotting
  • SciPy for statistics
  • Pandas for Data Analysis

Databases

  • Relational Databases
    • MySQL
    • postgres
    • sqlite3
  • MongoDB
  • Redis

Development Tools

  • Unit Tests
  • Building Projects with Setuptools
  • VirtualEnv
  • Cython

Special topics

  • NetCDF Files - netCDF4