Gain a deep understanding of the Python programming language by learning all the precise details and best practices from expert instructor Ted Petrou.
This course is much more than just exercises. There are over 150 pages of text with precise details and best practices for using Python. Each topic is covered thoroughly so that you too can become an expert.
Reading texts or listening to lectures give the false impression of learning. To demonstrate learning, you must be able to complete tasks on your own. Exercise Python comes with 150+ exercises and detailed solutions along with several longer and more complex projects.
Python is an evolving language that adds new features at every release. This course is guaranteed to remain updated to the latest version of Python through at least 2021. New material, exercises, and projects will also be added frequently. You will have lifetime access to all of its contents.
You will be given detailed instructions on how to install python onto your machine and set up an environment to run all the code within the book.
We will be using the excellent (though still needing improvement) Jupyter Notebook to run most of the code. It provides an interactive coding environment to quickly execute code, get feedback, and make notes.
Every value in Python is an object and all objects have a type. We begin by learning how to create 'basic' types such as booleans, integers, and floats.
The simplest and most straightforward actions we can perform with these basic types are with operators. Most operators are one or two non-alphanumeric symbols that use two values (arguments) to produce a new value. You will learn about arithmetic, comparison, and boolean operators.
In order to reuse the result of an operation, we need to save the result. In python, we use assignment statements to assign this result to a name. We refer to these names as variables or variable names.
Strings are a more complex type of object and consist of a sequence of characters. Strings are the first types of objects where we use methods to harness their power. We also learn about how to select subsets of strings using slice notation.
Lists are sequences that may contain any number of other objects of any type. They are an important data structure used frequently in most python programs and are mutable (able to be changed).
Ranges are the first types of objects covered that cannot be constructed as a literal. You will learn how to create a range with its constructor and then learn how to create all of the previous types covered their own constructor.
Normal flow of python programs occurs by executing the very next line of code under the current line beginning at the top. We can change this normal flow with if/else statements and for/while loops. You will learn from practical examples, such as simulating a game of Craps.
Functions allow us to reuse an entire block of code by labeling it with a name. They help avoid repeating the same code over and over. You will learn how to use several built-in functions as well as how to create user-defined functions.
Python has several flexible built-in data structures that give us tremendous power to complete many tasks without the need to build them ourselves. Tuples, sets, and dictionaries are all different containers of data that we will explore.
Up until this part of the course, all of our Python commands have come from parts of the language that are built-in and immediately available to the interpreter. The standard library, which comes shipped with every Python installation, has many modules that contain more objects to enhance our programs. You will learn how to access these other objects with import statements. You will also learn how to develop your own modules.
Reading and writing data to an external file is a less-frequent but still important command. You will learn how to read and write files with the built-in `open` function. (upcoming)
Exceptions are raised during a program whenever execution of the program is unable to continue. You will learn about the built-in exceptions, what they usually refer to, and how to raise exceptions in your own programs. (upcoming)
Although you can write complex programs by only using the built-in types, you can write much more effective programs by using classes to create your own types. You will learn how to make use of special methods to make your objects integrate with the built-in python operators and functions.
This course is taught by Ted Petrou, an expert at Python, data exploration and machine learning. Ted is the author of the highly rated text Pandas Cookbook. Ted has taught hundreds of students Python and data science during in-person classroom settings. He sees first hand exactly where students struggle and continually upgrades his material to minimize these struggles by providing simple and direct paths forward.
Ted is one of the foremost authorities on using the pandas library to do data analysis. His blog posts have totaled well over 1 million views. He is also a prolific contributor on Stack Overflow having answered over 400 questions.
Ted holds a master's degree in statistics from Rice University and is the author of Exercise Python and Master Machine Learning with Python.
Video lessons for each chapter of the book will be produced and you will have access to them immediately once they are ready. No video lessons have been created currently.
You are purchasing a digital download along with access to all videos currently produced. Currently, no videos have been produced. The digital download includes the following:
Exercise Python does not assume any prior programming experience. The only thing you need to get started is a modern computer that runs a Windows, macOS, or Linux operating system.