# Practice Python by Solving 100 Python Problems

## What you'll learn

- Solve 100 Python scored assignments ranging from beginner to expert levels.
- Know your Python skill level via the collected points.
- Solve assignments in many areas: data analysis, image processing, visualizations, web apps, and much more.
- Compare your solutions to the correct Python solutions for every exercise. You will have the Teacher’s Edition!
- You will know the category level of your Python programming skills by the end of the course.
- Have unlimited access to your instructor: Ardit Sulce

## Course content

- Preview02:00
- 02:47Required Tools
- 04:48Best Practices
- 00:08Exercise 1 - Variable Updating
- 00:20Exercise 1: Solution
- 00:09Exercise 2 - Naming Rules
- 00:10Exercise 2: Solution
- 00:21Tips
- 00:06Exercise 3 - Compare vs Assign
- 02:31Exercise 3: Solution
- 00:12Exercise 4 - TypeError
- 00:18Exercise 4: Solution
- 00:08Exercise 5 - Sequence Indexing
- 00:16Exercise 5: Solution
- Preview00:11
- Preview00:16
- 00:16Exercise 7 - Sequence Slicing
- 00:12Exercise 7: Solution
- 00:13Exercise 8 - Negative Indexing
- 00:15Exercise 8: Solution
- 00:12Exercise 9 - Negative Slicing
- 00:15Exercise 9: Solution
- 00:14Exercise 10 - Sequence Item Picking
- 00:17Exercise 10: Solution
- 00:07Continuing
- 00:54Exercise 11 - Ranges
- 00:17Exercise 11: Solution
- 00:13Exercise 12 - More Ranges
- 01:34Exercise 12: Solution
- 00:14Exercise 13 - Ranges of Strings
- 01:15Exercise 13: Solution
- 00:15Exercise 14 - Removing Duplicates
- 00:58Exercise 14: Solution
- 00:08Exercise 15 - Simple Dictionary
- 00:17Exercise 15: Solution
- 00:09Exercise 16 - Accessing Dictionary Items
- 00:14Exercise 16: Solution
- 00:08Exercise 17 - Dictionary Items Sum Up
- 00:18Exercise 17: Solution
- 00:32Exercise 18 - KeyError
- 00:13Exercise 18: Solution
- 00:17Exercise 19 - Add Dictionary Key
- 00:16Exercise 19: Solution
- 00:10Exercise 20 - Apply Function to Dictionary Items
- 00:11Exercise 20: Solution
- 00:14Exercise 21 - Dictionary Filtering
- 00:25Exercise 21: Solution
- Preview00:59
- 00:20Exercise 22: Solution
- 00:09Exercise 23 - Multilevel Indexing
- 01:06Exercise 23: Solution
- 00:19Exercise 24 - Iterate Dictionary
- 01:41Exercise 24: Solution
- 00:27Exercise 25 - Print Alphabet
- 00:16Exercise 25: Solution

## Requirements

- A working computer (Windows, Mac, or Linux).
- Basic knowledge of Python.

## Description

Unlike standard video courses that walk you through the learning process, in this course, you will learn and improve your Python skills by solving 100 different Python assignments on your own. The assignments range from easy to advanced and each assignment comes with the solution provided by the instructor so you can compare your code with that of the instructor.

The course works best for those who already know Python basics that are variables, basic data types, functions, loops, and conditionals. If you don’t know Python basics, please, take a Python for beginners course first. Besides the exercises, the course also contains short and to-the-point videos tackling key Python concepts related to the exercises.

The exercises become more difficult as you progress through the course. The topics that the problems cover vary widely. You will find problems such as simple password generators, removing duplicates, finding the smallest file, fixing bugs in existing programs, and even creating chatbots from scratch. The wide range of exercises helps to improve your Python skills in all important areas.

This course will also increase your confidence when applying for jobs. The skills you learn in this class are common questions in programming job interviews. You will be prepared!

## Who this course is for:

- People who know Python basics, but lack the confidence to solve coding problems on their own.

## Instructor

Hi, I am Ardit! I am a Python programmer and teacher. I graduated in 2013 with a Master of Science in Geospatial Technologies from the University of Muenster in Germany.

I have worked with companies from various countries both as an employee and self-employed using Python together with companies such as the Center for Conservation Geography to map and understand Australian ecosystems, processing orthophotos with the Swiss in-Terra, and performing data mining to gain business insights with the Australian Rapid Intelligence. I am also the founder and author of PythonHow, a Python learning resource designed particularly for people with no previous programming experience.

**If you are interested in Python, I would suggest the following roadmap to becoming a Python developer. **

Start by first taking my course,* **The Python Mega Course: Build 10 Real World Applications,** *and then take my other course,* **The Advanced Python Course: Build 10 Professional Programs**. *Both courses are listed here on my profile page. Both courses are designed around learning Python by practice rather than rote memorization.

The mega course will guide you step by step, starting with Python basics and all the way to building real-world Python programs, including GUIs, web apps, web scrapers, mobile apps, etc. Once you complete that course, take the other one.

The advanced course will take you to a new professional level, teaching you Python from a deeper computer science perspective, covering programming logic, and giving you the skills for building complex, professional applications in an object-oriented programming (OOP) style. After you complete the second course, you can practice Python even further by remaking the 10 apps of the first mega course, but this time in OOP style. If you can manage to do that, you will be job-ready.