Duration of the online course: 5 hours and 20 minutes
4.67
(51)
Build real Python skills fast with a free online course: write code, automate tasks, understand logic, files, and functions, and earn a certificate.
In this free course, learn about
Course Introduction and Setup
Python Fundamentals: Programs, Comments, and Variables
Strings, Text, and Printing
User Input, Prompts, and Script Arguments
Working with Files
Functions and Return Values
Practice, Code Reading, and Debugging
Boolean Logic and Conditional Decisions
Lists, Loops, and Program Branching
About the free online course
Start coding with confidence and turn Python into a practical skill you can use right away. This free online course is designed for beginners who want clear guidance and steady progress, while still being useful for anyone returning to programming and needing a structured refresh. You will learn how to set up your environment, choose the right tools, and begin writing programs that actually run, not just examples you copy and forget.
Along the way, you build a strong foundation in the core ideas that make Python readable and powerful: variables, data types, strings, printing, and basic math. Instead of treating these as abstract concepts, the course connects them to real coding habits, like writing clean output, using comments for clarity, and understanding how formatting works when you display information. You will also get comfortable reading errors and fixing common issues, an essential step toward becoming independent as a developer.
As you advance, the course shifts from single lines of code to programs that interact with people and with your computer. You practice taking user input, using command-line arguments, and working with files: opening, reading, writing, and managing data safely. You also learn to organize your work with functions, including how to pass values, return results, and reuse logic to keep programs simple and maintainable.
Decision-making and automation come next. You strengthen your understanding of boolean logic, conditions, and control flow, then apply that knowledge to build programs that respond to different situations. Loops and lists help you handle repeated tasks and collections of information, skills that show up in everything from data processing to scripting. By the end, you will not only know Python syntax, you will understand how to think through problems, structure solutions, and keep improving through practice, giving you a solid step toward new projects, technical roles, or further study in programming.
Course content
Video class: Learn Python the Hard Way - Welcome01m
Exercise: What is the difference between the free version and the paid version of Learn Python the Hard Way?
Video class: Learn Python the Hard Way - Ex 00 - The Setup15m
Exercise: What is the preferred Python version for 'Learn Python the Hard Way'?
Video class: Learn Python the Hard Way - Ex 01 - A Good First Program11m
Exercise: What is the purpose of using a text editor when programming in Python?
Video class: Learn Python the Hard Way - Ex 02 - Comments and Pound Characters07m
Exercise: What is the purpose of comments in Python programs?
Video class: Learn Python the Hard Way - Ex 03 - Numbers and Math10m
Exercise: What is the meaning of the % symbol in programming?
Video class: Learn Python the Hard Way - Ex 04 - Variables and Names08m
Exercise: What does the assignment operator in Python do?
Video class: Learn Python the Hard Way - Ex 05 - More Variables and Printing08m
Exercise: What is the purpose of the % symbol in the string "Let's talk about %s"?
Video class: Learn Python the Hard Way - Ex 06 - Strings and Text10m
Exercise: What represents a boolean variable in Python?
Video class: Learn Python the Hard Way - Ex 07 - More Printing05m
Exercise: What is the purpose of the asterisk (*) in the line "print('.' * 10) "?
Video class: Learn Python the Hard Way - Ex 08 - Printing, Printing05m
Exercise: What is the purpose of using '%r' in the 'formatter' variable in Python?
Video class: Learn Python the Hard Way - Ex 09 - Printing, Printing, Printing05m
Exercise: What is the purpose of the backslash symbol in the code?
Video class: Learn Python the Hard Way - Ex 10 - What Was That?06m
Exercise: What does the escape sequence '\n' do in Python strings?
Video class: Learn Python the Hard Way - Ex 11 - Asking Questions06m
Exercise: What is the purpose of using a comma after the print statement in Python?
Video class: Learn Python the Hard Way - Ex 12 - Prompting People05m
Exercise: What is the purpose of exercise 12 in the series 'Learn Python the Hard Way'?
Video class: Learn Python the Hard Way - Ex 13 - Parameters, Unpacking, Variables05m
Exercise: What is the purpose of the statement "from sis import ArgV" in the code mentioned by Barton Poulson?
Video class: Learn Python the Hard Way - Ex 14 - Prompting and Passing08m
Exercise: What does the %s operator do in Python string formatting?
Video class: Learn Python the Hard Way - Ex 15 - Reading Files08m
Exercise: How does the Python script read and display a text file in 'Learn Python the Hard Way' Exercise 15?
Video class: Learn Python the Hard Way - Ex 16 - Reading and Writing Files12m
Exercise: What command creates a new file if it doesn't exist while writing?
Video class: Learn Python the Hard Way - Ex 17 - More Files12m
Exercise: What is the purpose of the "exists" function from the "OS" library that is imported in the script?
Video class: Learn Python the Hard Way - Ex 18 - Names, Variables, Code, Functions08m
Exercise: What is the correct way to define a function in Python?
Video class: Learn Python the Hard Way - Ex 19 - Functions and Variables05m
Exercise: What is the purpose of the function defined in Exercise 19 of "Learn Python the Hard Way" by Zee Shah?
Video class: Learn Python the Hard Way - Ex 20 - Functions and Files09m
Exercise: What is the purpose of the 'rewind' function in the described Python exercise?
Video class: Learn Python the Hard Way - Ex 21 - Functions Can Return Something08m
Exercise: What is the purpose of the "return" function in Python?
Video class: Learn Python the Hard Way - Ex 22 - What Do You Know So Far?06m
Exercise: What is the purpose of Exercise 22 in 'Learn Python the Hard Way'?
Video class: Learn Python the Hard Way - Ex 23 - Read Some Code07m
Exercise: What is the main objective of Exercise 23 from the online book 'Learn Python the Hard Way'?
Video class: Learn Python the Hard Way - Ex 24 - More Practice13m
Exercise: What is the escape character used for in Python strings?
Video class: Learn Python the Hard Way - Ex 25 - Even More Practice18m
Exercise: What is the purpose of the "break_words" function in Exercise 25?
Video class: Learn Python the Hard Way - Ex 26 - Congratulations, Take a Test!08m
Exercise: What common Python error was found in the code described?
Video class: Learn Python the Hard Way - Ex 27 - Memorizing Logic05m
Exercise: What is the result of a logical test if both conditions in an "and" statement are false?
Video class: Learn Python the Hard Way - Ex 28 - Boolean Practice11m
Exercise: Understanding Boolean Logic in Python: True or False Evaluations
Video class: Learn Python the Hard Way - Ex 29 - What If05m
Exercise: What are the correct output lines from the given Python script using if statements?
Video class: Learn Python the Hard Way - Ex 30 - Else and If05m
Exercise: What will be printed based on the given conditions?
Video class: Learn Python the Hard Way - Ex 31 - Making Decisions09m
Exercise: What action allows you to survive in the text-based adventure game in the exercise?
Video class: Learn Python the Hard Way - Ex 32 - Loops and Lists11m
Exercise: What is the primary purpose of using loops and lists in Python programming as highlighted in the video?
Video class: Learn Python the Hard Way - Ex 33 - While Loops11m
Exercise: What is the keyword used to define a while loop in Python?
Video class: Learn Python the Hard Way - Ex 34 - Accessing Elements of Lists07m
Exercise: What is the zero-based index of the animal 'peacock' in the list?
Video class: Learn Python the Hard Way - Ex 35 - Branches and Functions10m
Exercise: What is the purpose of the "from sis import exit" line in the code?
Which Python version is used in Learn Python the Hard Way?
The original exercises commonly use Python 2 syntax, such as print statements without parentheses. Modern learners can adapt the concepts and code to Python 3.
What does the % symbol do in Python?
Its meaning depends on context: it calculates the remainder in math expressions and is used as a placeholder operator in older-style string formatting.
How do you define a function in Python?
Use the def keyword, followed by the function name, parentheses for parameters, a colon, and an indented code block.
Ready to get started?Download the app and get started today.
Course comments: Python
abhishek gulagi
i love this
precious Gugu Mabaso
I don't understand
Mmadiphisho Adelaide
I don't understand to write the exercises
yogita mishra
nice