Introduction to Python Development

Training Architect
course instructor image
Keith Thompson
A software craftsman with love for all things Linux. Whether it's writing large scale web applications, automating deployment pipelines, or merely creating scripts to do the tedious work, Keith is always looking to learn and improve himself as an engineer. This love of learning and growth manifested into an insatiable drive to teach and spread his love of technology with others.

Course Introduction

Getting Started

Course Introduction
00:01:19
About the Course Author
00:01:12
Course Features and Tools
00:05:54

Environment Setup

Installing Python 3.7 on CentOS 7
00:06:35
(Optional) Installing Python 3.7 on Debian/Ubuntu
00:03:53
Picking a Text Editor or IDE
00:06:36
(Optional) Setting Up a Vim Development Environment
00:05:47

Python from Scratch

Running Python

Using the REPL (Read, Evaluate, Print, Loop)
00:02:24
Creating and Running Python Files
00:04:18
Using Comments
00:02:57

Built-in Data Types

Strings
00:11:24
Numbers
00:07:20
Booleans and None
00:02:34
Working with Variables
00:04:32
Lists
00:14:31
Tuples & Ranges
00:08:21
Dictionaries (dicts)
00:09:35

Control Flow

Conditionals and Comparisons
00:12:50
Logic Operations
00:10:15
The `while` loop
00:07:50
The `for` Loop
00:08:49

Programming Concepts

Encapsulating Code

Writing Functions
00:12:35
Hands-On-Lab: Solving Problems with Built-in Python Types
00:30:00
Hands-On-Lab: Utilizing Control Flow Structures in Python
00:30:00

Object-Oriented Programming Basics

Creating Classes
00:14:16
Composition
00:17:36
Inheritance
00:15:53
Polymorphism
00:05:30
Hands-On-Lab: Modeling Data with Classes in Python
01:00:00

Using Packages

Using Standard Library Packages
00:11:12
Working with Third-Party Packages
00:14:59

Common Uses and Debugging

Interacting with Files
00:12:38
Environment Variables
00:04:22
Error Handling
00:08:46
Decorators
00:16:12
Breakpoint Debugging with PDB
00:09:46

Use Case: Creating CLIs

Building CLIs with Python

Project Setup
00:12:48
Setting Up External Dependencies
00:09:20
Building the CLI: Handling Arguments and Flags
00:11:47
Interacting with External Processes: Utilizing `pg_dump`
00:06:28
Storing Data Locally
00:02:01
Interacting with AWS S3
00:05:07
Wiring the Pieces Together
00:17:00
Distributing the Package
00:07:28
Hands-On-Lab: Building a Command Line Tool with Python
02:00:00

Use Case: Web Development

Intro to Web Development

Visualizing Web Development
00:06:49
Project Setup
00:03:19
Creating the Flask Application and Database
00:13:44
Modeling Data with an Object-Relational Mapper
00:13:30
Building User Registration
00:18:40
Building User Authentication
00:11:18
Implementing Notes CRUD - Creating and Reading
00:18:55
Implementing Notes CRUD - Updating and Deleting
00:18:16
Hands-On-Lab: Building a Web Application with Python and Flask
04:00:00

Course Conclusion

Final Steps

What's Next?
00:02:08

Details

This course is designed to teach you how to program using Python. We'll cover the building blocks of the language, programming design fundamentals, how to use the standard library, third-party packages, and how to create Python projects. In the end, you should have a grasp of how to program.


By the time you've finished this course you will be able to:



  • Read, write, and understand Python code
  • Have an basic understanding of Object-Oriented Programming (OOP)
  • Utilize Python as a primary language for tooling
  • Develop Python projects from start to finish

Study Guides

Visualizing Web Development

The PDF of the slideshow for "Visualizing Web Development".

Instructor Deck

Community

certificate ribbon icon

Earn a Certificate of Completion

When you complete this course, you’ll receive a certificate of completion as proof of your accomplishment.

Looking For Team Training?

Learn More