Python Programming

Welcome to Python Programming! The primary goal of this web-book is to provide an introduction to the Python programming language, and to programming in general. This book is also meant to serve as a reference for anyone who programs in Python.

Note

This book is a work in progress and you are viewing it as it is being constructed. Many pages are incomplete and much of the content and structure will change in the near future.

The contents of this book are arranged into the following seven sections:

  • Getting Started. This section provides mostly non-technical introductions to programming and to the Python programming language. It also provides instructions for setting your environment.

  • Python Basics. This section provides resources for writing simple Python expressions, for performing arithmetic calculations, and for working with variables.

  • Basic Data Types. Here you will learn about some of the basic Python data types. These data types represent simple types of information such as numbers and text.

  • Collections. This section will introduce you to collection objects which can be used to store multiple pieces of information.

  • Control Flow. Here you will find information related to repetition and branching.

  • Functions and Classes. The concepts introduced in this section will allow for modularity and reusability of your code.

  • Additional Topics. This section contains an assortment of topics, including references for many useful Python packages.

Other Resources

This web-book is part of a planned series of four web-books dealing with Python. Information about the books in this series can be found below. Please note that all of these books are currently under development.

This book provides an introduction to programming in Python. The emphasis is on using Python for general programming tasks.

This book provides introductions to many Python packages that are useful in Data Science. These packages include NumPy, Pandas, Matplotlib, and Scikit-Learn. This book focuses on data analysis and data visualization, but it also contains an introduction to machine learning.

This book provides resources for using Python to create machine learning models. It will cover some of the theory related to machine learning but places an emphasis on application.

This book provides an introduction to using the Keras and PyTorch packages to create neural network models. It will cover topics such as image classification, audio classification, natural language processing, and generative models.