PopularJourney
Learn Python
A free, interactive online Python course. You write code on every lesson — Python basics, loops, functions, and object-oriented programming — get AI hints when you're stuck, and earn a free certificate when you finish.
1,688,413+ codders enrolled
- Beginner friendly
AI-assisted coding help
Hands-on interactive lessons
Audio narration on every lesson
Quizzes to test your knowledge
Free certificate of completion
Syllabus
Section 1
Fundamentals
Start sectionStartExpandCollapseBuild a strong foundation with essential concepts and basic skillsIntroduction
3 lessons216- 01The LanguageChallenge
- 02Hello World!ChallengeQuiz
- 03CommentsQuiz
Variables
6 lessons838- 01NumbersChallengeMasteryQuiz
- 02StringChallengeMasteryQuiz
- 03BooleanChallengeMasteryQuiz
- 04Naming Conventions Quiz
- 05Empty VariablesChallengeQuiz
- 06Recap - Initialize VariablesChallenge
Operators Part 1
5 lessons931- 01Arithmetic OperatorsChallengeMasteryQuiz
- 02Modulo OperatorChallengeMasteryQuiz
- 03Arithmetic ShortcutsChallengeMasteryQuiz
- 04Recap - Simple MathChallenge
- 05Comparison OperatorsChallengeMasteryQuiz
Operators Part 2
5 lessons930- 01Logical Operators Part 1ChallengeMasteryQuiz
- 02Logical Operators Part 2ChallengeMasteryQuiz
- 03Recap - Simple LogicChallenge
- 04Logical Operators Part 3ChallengeMasteryQuiz
- 05Logical Operators Part 4ChallengeMasteryQuiz
Decision Making
4 lessons721- 01If StatementChallengeMasteryQuiz
- 02If - ElseChallengeMasteryQuiz
- 03Recap - Simple CalculatorChallenge
- 04Nested If - ElseChallengeMasteryQuiz
Basic IO
6 lessons831- 01OutputChallengeQuiz
- 02Output With VariablesChallengeQuiz
- 03InputChallengeMasteryQuiz
- 04CastChallengeMasteryQuiz
- 05Recap - Till 120Challenge
- 06Recap - True or FalseChallenge
Bill Split Calculator
Project5 lessons1- 01Welcome MessageChallenge
- 02Getting InputProject
- 03Calculating The Tip And TotalProject
- 04Splitting The BillProject
- 05Formatted OutputProject
Loops
8 lessons1444- 01For LoopChallengeMasteryQuiz
- 02While LoopChallengeMasteryQuiz
- 03BreakChallengeMasteryQuiz
- 04ContinueChallengeMasteryQuiz
- 05Recap - FactorialChallenge
- 06The Range FunctionChallengeMasteryQuiz
- 07Nested LoopChallengeMasteryQuiz
- 08Recap - Dynamic InputChallenge
Functions
6 lessons833- 01Declare a FunctionChallengeMasteryQuiz
- 02ArgumentsChallengeMasteryQuiz
- 03ReturnChallengeMasteryQuiz
- 04Recap - Sigma FunctionChallenge
- 05Recap - Validation FunctionChallenge
- 06Default ValuesQuiz
FizzBuzz with a Twist
Project4 lessons1- 01Game OverviewChallenge
- 02The FizzBuzz FunctionProject
- 03Looping The NumbersProject
- 04Adding The TwistProject
Lists Basics
7 lessons938- 01Declaring a ListChallengeQuiz
- 02Accessing List ElementsChallengeMasteryQuiz
- 03Modifying ListsChallengeMasteryQuiz
- 04List MethodsChallengeMasteryQuiz
- 05Recap - Product ListChallenge
- 06Recap - Reversed ListChallenge
- 07TupleQuiz
Iterating Over Sequences
4 lessons830- 01Iterating Over ElementsChallengeMasteryQuiz
- 02The Enumerate FunctionChallengeMasteryQuiz
- 03Iterating Over Strings Part 1ChallengeMasteryQuiz
- 04Iterating Over Strings Part 2ChallengeMasteryQuiz
Lists Advanced
4 lessons830- 01List Slicing Part 1ChallengeMasteryQuiz
- 02List Slicing Part 2ChallengeMasteryQuiz
- 03Sequence OperatorsChallengeMasteryQuiz
- 04MembershipChallengeMasteryQuiz
Daily Expense Tracker
Project7 lessons1- 01Project OverviewChallenge
- 02Exit The ProgramProject
- 03Add ExpenseProject
- 04View All ExpensesProject
- 05Total And AverageProject
- 06Clear AllProject
- 07Handling ErrorsProject
Final Challenges
3 lessons3- 01Flat Asterisk PyramidChallenge
- 02Pattern FinderChallenge
- 03What To BuyChallenge
Section 2
Logic & Flow
Start sectionStartExpandCollapseDevelop problem-solving skills and create dynamic, interactive programsVariables Exploration
6 lessons745- 01ConstantsChallengeQuiz
- 02Multiple Variable AssignmentsChallengeQuiz
- 03Swapping VariablesChallengeQuiz
- 04Placeholder VariablesChallengeQuiz
- 05Round NumbersChallengeMasteryQuiz
- 06List CastingChallengeQuiz
Dictionaries Part 1
5 lessons631- 01What is a Dictionary?Quiz
- 02Creating a DictionaryChallengeMasteryQuiz
- 03Accessing ValuesChallengeQuiz
- 04Modifying DictionariesChallengeMasteryQuiz
- 05Recap - Recipe ManagerChallenge
Dictionaries Part 2
5 lessons630- 01Dictionary MethodsChallengeQuiz
- 02Nested DictionariesQuiz
- 03Checking for KeysChallengeMasteryQuiz
- 04Looping Through DictionariesChallengeMasteryQuiz
- 05Recap - Frequency CounterChallenge
Contact Book Application
Project7 lessons1- 01Display MenuChallenge
- 02Add ContactProject
- 03View ContactProject
- 04Edit ContactProject
- 05Delete ContactProject
- 06List AllProject
- 07Everything TogetherProject
Advanced Decision Making
5 lessons729- 01Ternary OperatorChallengeMasteryQuiz
- 02Membership ChecksChallengeMasteryQuiz
- 03Identity ChecksChallengeMasteryQuiz
- 04Indentation ErrorsQuiz
- 05Recap - Vacation FilterChallenge
Sets Part 1
4 lessons524- 01What is a Set?ChallengeQuiz
- 02Basic OperationsChallengeMasteryQuiz
- 03Set MethodsChallengeQuiz
- 04Recap - Remove DuplicatesChallenge
Sets Part 2
6 lessons732- 01Mathematical Operations Part 1ChallengeQuiz
- 02Mathematical Operations Part 2ChallengeQuiz
- 03Recap - Treasure HuntChallenge
- 04Subsets and SupersetsChallengeQuiz
- 05Iterating Over SetsChallengeMasteryQuiz
- 06Recap - Tournament TrackerChallenge
Student Records Manager
Project7 lessons1- 01Project OverviewChallenge
- 02Add StudentProject
- 03Add GradeProject
- 04Is EnrolledProject
- 05Average GradeProject
- 06List by CourseProject
- 07Top StudentsProject
Advanced Data Aggregation
4 lessons723- 01Using SumChallengeMasteryQuiz
- 02Finding Minimum and MaximumChallengeMasteryQuiz
- 03Sorting Data EfficientlyChallengeMasteryQuiz
- 04Recap - Dictionary SorterChallenge
Basic List Comprehensions
6 lessons631- 01The SyntaxChallengeQuiz
- 02Creating Simple ListsChallengeQuiz
- 03Adding ConditionsChallengeQuiz
- 04Using Data AggregationChallengeQuiz
- 05Recap - House Of ListsChallenge
- 06Recap - Elements Of FreedomChallenge
Advanced Functions
7 lessons1146- 01Returning Multiple ValuesChallengeMasteryQuiz
- 02Lambda Functions Part 1ChallengeMasteryQuiz
- 03Lambda Functions Part 2ChallengeQuiz
- 04Recap Challenge - Lambda SortChallengeQuiz
- 05Recursive Functions Part 1ChallengeMasteryQuiz
- 06Recursive Functions Part 2ChallengeMasteryQuiz
- 07Recap - Sum Nested ListChallenge
Basic Error Handling
4 lessons323- 01What is Error Handling?Quiz
- 02The Try and Except BlockChallengeQuiz
- 03Handling Multiple ExceptionsChallengeQuiz
- 04Recap - Shopping Cart ErrorsChallenge
Inventory Management System
Project5 lessons1- 01Project OverviewChallenge
- 02Add ItemProject
- 03Update StockProject
- 04Check AvailabilityProject
- 05Generate ReportProject
Higher-Order Functions
4 lessons616- 01The Map FunctionChallengeMasteryQuiz
- 02The Filter FunctionChallengeMasteryQuiz
- 03Recap - Email ValidatorChallenge
- 04Recap - Number ProcessorChallenge
Final Challenges
3 lessons3- 01Smart Contact ManagerChallenge
- 02Word AnalyticsChallenge
- 03Data TransformerChallenge
Section 3
Object Oriented Programming
Start sectionStartExpandCollapseDiscover how to organize code with classes, objects, and reusable structuresFundamentals of OOP
8 lessons755- 01External FilesChallengeQuiz
- 02Introduction to OOPChallengeQuiz
- 03Classes vs ObjectsChallengeQuiz
- 04The self ParameterChallengeQuiz
- 05MethodsChallengeQuiz
- 06AttributesQuiz
- 07Constructor Method (__init__)ChallengeQuiz
- 08Recap - Simple CalculatorChallenge
Decorators
4 lessons33- 01Introduction to DecoratorsQuiz
- 02Property DecoratorQuiz
- 03Static Method DecoratorQuiz
- 04Class Method DecoratorQuiz
Class Properties
4 lessons425- 01Instance vs Class VariablesChallengeQuiz
- 02Property DecoratorsChallengeQuiz
- 03Private AttributesChallengeQuiz
- 04Recap - Bank Account ManagerChallenge
Inheritance
6 lessons640- 01Basic InheritanceChallengeQuiz
- 02The super() FunctionChallengeQuiz
- 03Method OverridingChallengeQuiz
- 04Multiple InheritanceChallengeQuiz
- 05Method Resolution OrderChallengeQuiz
- 06Recap - Employee HierarchyChallenge
Polymorphism
5 lessons533- 01Method Overriding RevisitedChallengeQuiz
- 02Duck TypingChallengeQuiz
- 03Abstract Classes and MethodsChallengeQuiz
- 04Interface DesignChallengeQuiz
- 05Recap - Shape CalculatorChallenge
Encapsulation
5 lessons535- 01Public, Protected, Private MemChallengeQuiz
- 02Access ModifiersChallengeQuiz
- 03Information HidingChallengeQuiz
- 04Property Decorators AdvancedChallengeQuiz
- 05Recap - Student Records SystemChallenge
Special Methods
4 lessons426- 01Magic Methods IntroductionChallengeQuiz
- 02Operator OverloadingChallengeQuiz
- 03Container Magic MethodsChallengeQuiz
- 04Recap - Custom ListChallenge
Advanced OOP Concepts
5 lessons543- 01Composition vs InheritanceChallengeQuiz
- 02MixinsChallengeQuiz
- 03Static and Class MethodsChallengeQuiz
- 04Class DecoratorsChallengeQuiz
- 05Context ManagersChallengeQuiz
Advanced Arguments
2 lessons217- 01The *argsChallengeQuiz
- 02The **kwargChallengeQuiz
Design Patterns Part 1
5 lessons443- 01Intro to design patternQuiz
- 02Singleton PatternChallengeQuiz
- 03Factory PatternChallengeQuiz
- 04Observer PatternChallengeQuiz
- 05Strategy PatternChallengeQuiz
Design Patterns Part 2
6 lessons650- 01Command PatternChallengeQuiz
- 02Adapter PatternChallengeQuiz
- 03Decorator PatternChallengeQuiz
- 04Template Method PatternChallengeQuiz
- 05State PatternChallengeQuiz
- 06Composite PatternChallengeQuiz
Project: Library Management
Project6 lessons1- 01Project OverviewChallenge
- 02Book and User ClassesProject
- 03Borrowing SystemProject
- 04Search FunctionalityProject
- 05Admin InterfaceProject
- 06Testing and IntegrationProject
Final Challenges
4 lessons4- 01E-learning PlatformChallenge
- 02Banking SystemChallenge
- 03Game Character DevelopmentChallenge
- 04Vehicle Rental ServiceChallenge
Why learn Python with Coddy
- Free, no install, no Python interpreter to configure, no signup wall. Open the course and start writing real Python 3 code in your browser.
- Every concept comes with a coding challenge, so you spend the lesson writing Python instead of just reading about it.
- AI hints unblock you when an exercise stops making sense, without handing over the answer. That's the difference between learning Python and copying it.
- Free Python certificate of completion you can share on LinkedIn or your resume — proof you finished an interactive Python course, not just watched videos.
Frequently asked questions about learning Python
Is Python easy to learn?
Python is one of the easier programming languages to pick up. The syntax reads close to English, indentation replaces curly braces, and a working script can be three or four lines. Most beginners on Coddy reach their first real Python program within the first hour.
How long does it take to learn Python?
Python basics — variables, conditionals, loops, functions — take one to two weeks of daily practice. Reaching a job-ready level (data structures, OOP, common libraries) typically takes two to six months. The course is structured so you can see your own progress every session.
Where can I learn Python online for free?
Coddy is a free online platform to learn Python. The interactive Python course — lessons, coding challenges, quizzes, and projects — is free, with an optional premium tier for extras. Nothing installs locally; everything runs in the browser.
How can I learn Python fast?
Write Python every day. Coddy's course is set up for that: short interactive lessons, immediate hands-on exercises, and AI hints when you stall. The bottleneck is reps, not video length.
Do I get a Python certificate when I finish?
Yes. Finishing the Python course gives you a free certificate of completion you can share on LinkedIn or add to your resume. It's not a university accreditation, but it's a verifiable signal that you've worked through a structured, interactive Python course.
What can I build after learning Python?
Small data-analysis scripts, automations for repetitive tasks, web scrapers, simple games, or a step into web development with Django/Flask, data science with pandas and NumPy, or machine learning. The course finishes with real-world Python projects so you have something to point at.