Introduction to Python

✨ Level
🕗 Duration
💻 Practice
Beginner
2-4 months
300+ coding exercises
notion image
Welcome to the Introduction to Python course! In this course, you will learn a lot about the language and programming in general. This course is designed for complete beginners or people who already know another programming language but want to learn Python and enhance their knowledge in this field.
Python is one of the most popular languages and is used across many disciplines to solve various tasks. It is widely used in Machine Learning, Web Development, Robotics, and many automation tasks. In the last 10 years, the language has gained huge popularity among programmers and tech companies. It is currently considered the most popular language according to many reports.
notion image

💻 Learn By Doing

In this course, you learn by doing! Each concept has several interactive challenges that you will solve to pass on to the next one. We believe that hands-on learning is the best way to get in-depth knowledge. Here you will have many challenging and at the same time interesting exercises to practice each and every concept that is covered.
You will study at your own pace. You can go hard and complete several levels in one week, or take it slow and focus on each concept for longer.
There is a forum to ask questions and get unstuck. You can ask or answer the questions of others under each challenge.

🎓 Curriculum

This course focuses on the core concepts of Python and introduces each of them in an intuitive manner. To make the process more fun and engaging, the concepts are organized into levels, and passing each level means you’ve mastered a new concept. These are the main things we will be covering here:
Input and output
  • print and input commands
  • Additional parameters for the print function
Variables and integer arithmetic
  • Python as a simple calculator
  • addition, subtraction, multiplication
  • division, modulus
Conditional operators
  • bool type (True and False)
  • if, else, and elif statements
  • Logical operators
  • Nested conditional statements
Types of variables
  • int and float types
  • math module - square roots, exponents, etc
Textual values (strings)
  • Strings and accessing each character
  • f-strings
  • Slicing
Lists
  • Lists - list and []
  • Accessing elements of lists
  • Removing elements with del []
  • Nested lists and matrices
for loops
  • for loop syntax
  • range function
while loops
  • while loop syntax
  • Working with number digits
continue break and while ... else
  • Skip an iteration with continue
  • Get out of a loop with a break
  • while ... else statements
Utility methods for strings and lists
  • title(), upper(), lower(), etc
  • istitle(), isalpha(), etc
  • strip(), replace(), etc
  • split() and join()
  • Sorting of lists
Nested loops
  • Nested for and while loops
  • Handling 2D lists
List comprehension
  • Simplifying list creation with list comprehension
  • Nested list comprehension
  • 2D list comprehension
Tuples
  • Tuples - tuple and ()
  • Accessing elements of tuples
  • Creating a tuple from a list
Sets
  • Sets - set and {}
  • Venn’s diagram
  • add and remove
  • Set comprehension
Dictionaries
  • Dictionaries - dict and {}
  • Accessing values of dictionaries
  • Looping over dictionaries
  • Dict comprehension
  • Counters
Functions
  • def syntax
  • Functions with and without arguments
  • Functions with single and multiple return values
  • Functions inside functions
  • Lambda functions
Working with files
  • open-ing a file in different modes
  • reading, writing and appending to a file
  • pathlib module
  • Automating tasks with files
Applications and wrap-up
  • Random numbers
  • Interactive games

🚀 Welcome

Learning is 80% individual work. Completing this course will be your accomplishment and we’re here to support that journey!