HomeCoursesPython 101: Interactively learn how to program with Python 3
AI-powered learning
Save

Python 101: Interactively learn how to program with Python 3

This is a 101-level course in Python that will help you learn to program in Python for free.

4.6
161 Lessons
10h
Updated 2 weeks ago
Join 2.9 million developers at
Join 2.9 million developers at

Learning Roadmap

161 Lessons

1.

All About Strings

All About Strings

Learn how to use strings, string methods, slicing, and formatting in Python.

2.

Lists, Tuples and Dictionaries

Lists, Tuples and Dictionaries

Look at essential Python data types: lists, tuples, and dictionaries for foundational programming.

3.

Conditional Statements

Conditional Statements

6 Lessons

6 Lessons

Break apart using if/elif/else, Boolean logic, and input handling for decision-making in Python.

4.

Loops

Loops

4 Lessons

4 Lessons

Grasp the fundamentals of Python loops, including for and while loops, for repetitive tasks.

5.

Python Comprehensions

Python Comprehensions

4 Lessons

4 Lessons

Dig into Python comprehensions for creating lists, dictionaries, and sets efficiently.

6.

Exception Handling

Exception Handling

5 Lessons

5 Lessons

Investigate managing errors in Python using try/except, common exceptions, and finally/else statements.

7.

Working with Files

Working with Files

6 Lessons

6 Lessons

Master the steps to file handling in Python, including reading, writing, and error management.

8.

Importing

Importing

4 Lessons

4 Lessons

Step through methods of importing Python modules to enhance your programming.

9.

Functions

Functions

6 Lessons

6 Lessons

Walk through creating and using Python functions, from arguments to scope and DRY principles.

10.

Classes

Classes

4 Lessons

4 Lessons

Examine classes, self, subclasses, and creating instances for effective Python programming.

11.

Introspection

Introspection

4 Lessons

4 Lessons

Enhance your skills in Python introspection, utilizing `dir`, `type`, and `help` functions effectively.

12.

The CSV Module

The CSV Module

3 Lessons

3 Lessons

Solve problems in reading and writing CSV files using Python’s csv module effectively.

13.

configparser

configparser

4 Lessons

4 Lessons

See how to manage application settings with Python's configparser module.

14.

Logging

Logging

4 Lessons

4 Lessons

Practice using Python's logging module to create, configure, and format logs effectively.

15.

The os Module

The os Module

5 Lessons

5 Lessons

Learn how to use the os module to manage directories, files, and environment variables in Python.

16.

Sending emails

Sending emails

4 Lessons

4 Lessons

Get started with sending emails in Python using smtplib and email modules.

17.

The SQLite Module

The SQLite Module

4 Lessons

4 Lessons

Examine using SQLite within Python, covering database creation, updating, deleting records, and executing queries.

18.

The subprocess Module

The subprocess Module

4 Lessons

4 Lessons

Apply your skills to manage processes using Python's subprocess module efficiently.

20.

The threading module

The threading module

2 Lessons

2 Lessons

Simplify complex topics like Python threading and creating responsive threaded downloaders.

21.

Working with Dates and Time

Working with Dates and Time

3 Lessons

3 Lessons

Master working with Python's datetime and time modules for comprehensive date and time handling.

22.

The xml module

The xml module

6 Lessons

6 Lessons

Learn how to use Python's xml module for parsing, creating, and editing XML files.

23.

The Python Debugger

The Python Debugger

4 Lessons

4 Lessons

Get started with Python's pdb module to debug efficiently using breakpoints and stepping through code.

24.

Decorators

Decorators

5 Lessons

5 Lessons

Examine how Python decorators modify function behavior, add logging, and manage class attributes.

25.

The lambda

The lambda

2 Lessons

2 Lessons

Apply your skills to leveraging lambda functions for concise, efficient coding in Python projects.

26.

Code Profiling

Code Profiling

2 Lessons

2 Lessons

Take a closer look at identifying and optimizing performance bottlenecks using Python's cProfile.

27.

An Intro to Testing

An Intro to Testing

4 Lessons

4 Lessons

Investigate testing Python code using doctest and unittest for robust and accurate programming.

28.

Installing Modules

Installing Modules

5 Lessons

5 Lessons

Master the steps to installing Python packages using source, easy_install, and pip efficiently.

29.

ConfigObj

ConfigObj

2 Lessons

2 Lessons

Learn how to use ConfigObj for managing and validating Python configuration files effectively.

30.

Parsing XML with lxml

Parsing XML with lxml

5 Lessons

5 Lessons

Grasp the fundamentals of utilizing lxml for XML parsing and creation in Python.

31.

Python Code Analysis

Python Code Analysis

3 Lessons

3 Lessons

Work your way through enhancing Python code quality using pylint and pyflakes analysis tools.

32.

The requests package

The requests package

2 Lessons

2 Lessons

Break down complex ideas about using the requests package for HTTP requests and web forms.

33.

SQLAlchemy

SQLAlchemy

6 Lessons

6 Lessons

Dive into SQLAlchemy, exploring database creation, data manipulation, and executing queries with Python.

34.

virtualenv

virtualenv

2 Lessons

2 Lessons

Simplify complex topics on setting up and managing Python virtual environments and dependencies.

35.

Creating Modules and Packages

Creating Modules and Packages

3 Lessons

3 Lessons

Master the steps to create and organize Python modules and packages effectively.

36.

How to Add Your Code to PyPI

How to Add Your Code to PyPI

4 Lessons

4 Lessons

Learn how to use setuptools and distutils to upload Python packages to PyPI.

37.

The Python egg

The Python egg

2 Lessons

2 Lessons

Unpack the core of Python eggs for package distribution and management in Python.

38.

Python wheels

Python wheels

3 Lessons

3 Lessons

Examine the significance, creation, and installation of Python wheel files.

39.

py2exe

py2exe

4 Lessons

4 Lessons

Grasp the fundamentals of creating Windows executables from Python applications using py2exe.

40.

bbfreeze

bbfreeze

3 Lessons

3 Lessons

Dig into creating cross-platform Python binaries with bbfreeze for efficient distribution.

41.

cx_Freeze

cx_Freeze

3 Lessons

3 Lessons

Follow the process of creating Python executables with cx_Freeze for cross-platform use.

42.

PyInstaller

PyInstaller

3 Lessons

3 Lessons

Master creating standalone executables with PyInstaller, handling configurations, and integrating wxPython.

43.

Creating an Installer

Creating an Installer

3 Lessons

3 Lessons

Try out creating installers with GUI2Exe and Inno Setup, enabling seamless distribution.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Author NamePython 101: Interactively learnhow to program withPython 3
Developed by MAANG Engineers
ABOUT THIS COURSE
Welcome to Python 101! I created this course to help you learn Python 3. My objective is to get you acquainted with the building blocks of Python so that you can write something useful yourself. With interactive playgrounds to help you learn right away, I will endeavor to not only get you up to speed on the basics, but also to show you how to create useful programs. This course will be split into five parts: Part-I covers Python's basics. Part-II is a small subset of Python's Standard Library. Part-III is intermediate material. Part-IV is a series of small tutorials. Part-V covers Python packaging and distribution.
ABOUT THE AUTHOR

Michael Driscoll

Michael has been programming with Python since 2006. He is the author of the popular Python blog, The Mouse Vs. the Python as well as 7 books on the Python programming language. Michael has been a technical reviewer for Packt Publishing for several years.

Learn more about Michael

Trusted by 2.9 million developers working at companies

These are high-quality courses. Trust me the price is worth it for the content quality. Educative came at the right time in my career. I'm understanding topics better than with any book or online video tutorial I've done. Truly made for developers. Thanks

A

Anthony Walker

@_webarchitect_

Just finished my first full #ML course: Machine learning for Software Engineers from Educative, Inc. ... Highly recommend!

E

Evan Dunbar

ML Engineer

You guys are the gold standard of crash-courses... Narrow enough that it doesn't need years of study or a full blown book to get the gist, but broad enough that an afternoon of Googling doesn't cut it.

S

Software Developer

Carlos Matias La Borde

I spend my days and nights on Educative. It is indispensable. It is such a unique and reader-friendly site

S

Souvik Kundu

Front-end Developer

Your courses are simply awesome, the depth they go into and the breadth of coverage is so good that I don't have to refer to 10 different websites looking for interview topics and content.

V

Vinay Krishnaiah

Software Developer

Built for 10x Developers

No Passive Learning
Learn by building with project-based lessons and in-browser code editor
Learn by Doing
Personalized Roadmaps
The platform adapts to your strengths & skills gaps as you go
Learn by Doing
Future-proof Your Career
Get hands-on with in-demand skills
Learn by Doing
AI Code Mentor
Write better code with AI feedback, smart debugging, and "Ask AI"
Learn by Doing
Learn by Doing
MAANG+ Interview Prep
AI Mock Interviews simulate every technical loop at top companies
Learn by Doing