Python Practice Challenges is a large collection of 104 independent coding problems for turning Python knowledge into working solutions. The challenges start with small tasks such as calculations, conditions, strings, and collections, then expand into command-line tools, object-oriented design, file processing, web data, and concurrency.
This is a challenge-first course: each problem states a concrete result to implement, provides automated checks, and includes a solution you can consult after attempting it. With 53 Beginner, 47 Intermediate, and 4 Advanced challenges, the collection supports both steady practice and targeted skill testing.
What You Will Learn
- Translate short requirements into Python programs that produce verifiable results
- Solve calculation, branching, looping, string, collection, and search problems
- Design functions, iterators, classes, magic methods, inheritance, properties, and decorators
- Parse and transform text, regular expressions, JSON, logs, paths, files, dates, and time zones
- Build command-line utilities and practice input validation, exception handling, and unit testing
- Work with selected libraries and tools including Requests, Beautiful Soup, Pillow, tqdm, SQLite, and conda
- Apply threading, multiprocessing, and asynchronous programming to concurrent tasks
- Compare your implementation with provided solutions and use automated feedback to correct it
Who This Course Is For
This course is for learners who already know basic Python syntax and want substantial problem-solving practice. Beginners can start with the shorter introductory challenges, while more experienced learners can select intermediate or advanced work involving decorators, file processing, web scraping, authentication, or concurrency.
Prerequisites: You should be able to write and run a simple Python script and understand variables, conditionals, loops, functions, strings, and common collections. More advanced challenges assume the corresponding topic knowledge; the course does not teach every concept from first principles before testing it.
Learning environment: Most challenges run in an Ubuntu 22.04 WebIDE with an editor and terminal; four use an Ubuntu 22.04 VNC desktop. Starter files, tests, and required fixtures are supplied, and selected challenges install supporting packages such as Beautiful Soup, Pillow, aiohttp, Requests, pytz, and tqdm.
Frequently Asked Questions
Are all 104 challenges beginner level?
No. The collection contains 53 Beginner, 47 Intermediate, and 4 Advanced challenges. The course-level label reflects an accessible starting point, but later problems can require decorators, command-line parsing, threading, multiprocessing, or asynchronous code.
Are these guided lessons or problems to solve independently?
They are challenge-first exercises. You receive requirements and any starter assets, then implement the result and run automated checks. A solution is available for every task step, so you can compare approaches after making your own attempt.
Do I need to complete the challenges in order?
No. They are independent rather than parts of one cumulative application. You can begin with the early fundamentals or choose problems by topic and difficulty, provided you already know the relevant Python concepts.
Does the course include one large capstone project?
No. It uses many self-contained, small-project scenarios rather than a single capstone. This gives you broader repetition across language features, standard-library modules, selected third-party packages, and different problem types.




