Programmer's Picnic · Learn With Champak

Learn Python.
Find your next lesson.

One friendly, searchable home for Python basics, algorithms, object-oriented programming, NumPy and Pandas. Pick a topic, explore a lesson, and keep growing.

30Python lesson pages5Learning topicsFreeSelf-paced learning

Not sure where to begin?

Follow this four-stop route. Start with Python fundamentals, then grow into working with real data.

Find a Python lesson

Search by a topic or algorithm, or choose a category. The results update as you type.

Showing all 30 lessons

FundamentalsPython Collections and Data StructuresExplore lists, tuples, dictionaries and sets.Open lesson FundamentalsPython ConditionsLearn decisions with if, elif and else.Open lesson SortingSorting Python ListsSort lists and understand ordering.Open lesson FundamentalsLogic, Conditions, Loops and FunctionsBuild problem-solving skills with core Python logic.Open lesson FundamentalsLoops with range()Use for loops and range() confidently.Open lesson NumPyNumPy Arrays: Getting StartedCreate arrays and begin numerical computing.Open lesson NumPyData Cleaning with NumPyHandle missing values, outliers and messy data.Open lesson NumPyNumPy OperationsReshape, filter and broadcast arrays.Open lesson OOPObject-Oriented ProgrammingUnderstand classes, objects and methods.Open lesson OOPPython Magic MethodsExplore special double-underscore methods.Open lesson PandasPandas: From Zero to InfinityFollow the structured DataFrame learning series.Open lesson PandasLevel 0: Create DataFramesBuild DataFrames from data directly.Open lesson PandasLevel 1: Search DataFramesFind rows, columns and matching values.Open lesson PandasLevel 2: Change DataFramesEdit rows, columns and values.Open lesson PandasLevel 3: Clean DataFramesFix missing data, duplicates and invalid values.Open lesson PandasLevel 4: Sort, Group and SummarizeGroup data and create useful summaries.Open lesson PandasPandas and SQLConnect DataFrame thinking with SQL.Open lesson SortingSorting Algorithms: OverviewSee the family of sorting algorithms.Open lesson SortingBubble SortExplore how the bubble sort algorithm works.Open lesson SortingBucket SortExplore how the bucket sort algorithm works.Open lesson SortingCounting SortExplore how the counting sort algorithm works.Open lesson SortingHeap SortExplore how the heap sort algorithm works.Open lesson SortingInsertion SortExplore how the insertion sort algorithm works.Open lesson SortingMerge SortExplore how the merge sort algorithm works.Open lesson SortingQuick SortExplore how the quick sort algorithm works.Open lesson SortingRadix SortExplore how the radix sort algorithm works.Open lesson SortingSelection SortExplore how the selection sort algorithm works.Open lesson SortingTim SortExplore how the tim sort algorithm works.Open lesson FundamentalsStart Python HereYour first steps in Python programming.Open lesson FundamentalsException Handling with try/exceptHandle errors without crashing your program.Open lesson

One lesson at a time

You don't have to finish the entire index in order. If you're new, practise conditions, loops and collections first. If you already know Python, jump to sorting algorithms or explore practical data handling with NumPy and Pandas.

Teaching tip: After each lesson, write one example yourself, change the inputs, and predict the output before running the code.