We may earn an affiliate commission when you visit our partners.
Ardit Sulce

This Python course is the perfect course for anyone who knows the basics but wants to take their skills to the next level by building real-world applications. This course offers a unique, hands-on approach to learning Python that goes beyond simply following along with an instructor.

What You’ll Get:

Read more

This Python course is the perfect course for anyone who knows the basics but wants to take their skills to the next level by building real-world applications. This course offers a unique, hands-on approach to learning Python that goes beyond simply following along with an instructor.

What You’ll Get:

  • 50 Instructor-Led Projects: Watch as an experienced programmer walks you through the process of building 50 diverse and practical Python applications. Each project is broken down step-by-step, with detailed explanations of the logic and behind every decision.

  • 50 Independent Projects: After watching the instructor, it's your turn to put what you've learned into practice. You'll receive written project requirements, just like in a professional setting, and build a similar program on your own. This approach ensures that you not only understand the concepts but can apply them independently.

Why This Course Stands Out:

Other courses often require you to replicate what the instructor does in the video, which can be repetitive and unengaging. In this course, you can watch, learn, and then dive into coding with your own project. This method helps you develop real confidence in your programming abilities.

Is This Course for You?

This course is ideal if you already have a basic understanding of Python concepts like variables, data types, loops, conditionals, and functions. If these fundamentals are still unclear, don’t worry—you’ll see them in action repeatedly and gain a deep understanding by building your own projects.

By the end of this course, you'll have built 100 Python projects and gained the experience and confidence to tackle programming challenges on your own.

Enroll now

What's inside

Learning objectives

  • Build confidence in python programming.
  • Learn to build real-world programs.
  • Develop problem-solving skills.
  • Create a portfolio of 100 diverse projects.

Syllabus

Batch File Processing
How to Take the Course
Add Date to Filenames (Tutorial)
Rename Filenames (Project Description)
Read more
Rename Filenames (Project Solution)
String Manipulation
Reversing Text (Tutorial)
Conver Text to Sentence Case (Project Description)
Convert Text to Sentence Case (Project Solution)
Daily Python Projects
Manipulating JSON Data
Country JSON Data (Tutorial)
Quizes JSON Data (Project Description)
Quizes JSON Data (Project Solution)
Converting Between Excel, CSV, JSON
Converting Excel to JSON (Tutorial)
Convert Excel to CSV (Project Description)
Convert Excel to CSV (Project Solution)
Processing Columns in Excel
Adding New Columns to Excel (Tutorial)
Calculate Column in Excel (Project Description)
Calculate Column in Excel (Project Solution)
Building REST APIs with Flask
Building a Book API with Flask (Tutorial)
Build a Recipe API with Flask (Project Description)
Build a Recipe API with Flask (Project Solution)
Command Line Based Apps
Command Line To-do List (Tutorial)
Command Line Dairy (Project Description)
Command Line Dairy (Project Solution)
Using APIs
Discovering Historical Events (Tutorial)
Exploring Country Info (Project Description)
Exploring Country Info (Project Solution)
Using the Dropbox API
Uploading a File to Dropbox with Python
Uploading Multiple Files to Dropbox with Python (Project Description)
Uploading Multiple Files to Dropbox with Python (Project Solution)
Regular Expressions (Regex)
Extracting Email Addresses from Text (Tutorial)
Extract the First Sentence (Project Description)
Extract the First Sentence (Project Solution)
SQL Queries
Extracting Album Data from Database (Tutorial)
Extract Invoices from Database (Project Description)
Extract Invoices from Database (Project Solution)
Merging Excel Files with Python
Merging Excel Files (Tutorial)
Merge Excel Files with Condition (Project Description)
Merge Excel Files with Condition (Project Solution)
Analyzing User Input
Analyzing Text Input (Tutorial)
Analyzing Numerical Input (Project Description)
Analyzing Numerical Input (Solution)
Processing Word Documents with Python
Modifying Word Documents (Tutorial)
Merge Word Documents (Project Description)
Merge Word Documents (Project Solution)
Processing Text Files
Counting Word Frequencies (Tutorial)
Merge Text Files (Project Description)
Merge Text Files (Project Solution)
Utility Web Apps with Streamlit
Excel to JSON Converter Web App (Tutorial)
Excel to CSV Converter Web App (Project Description)
Excel to CSV Converter Web App (Project Solution)
Interactive Streamlit Web Apps
Live Currency Converter Web App (Tutorial)
Distance Converter Web App (Project Description)
Distance Converter Web App (Project Solution)
More Interactive Streamlit Web Apps
Generating People's Names Web App (Tutorial)
Discovering Historical Events Web App (Project Description)
Discovering Historical Events Web App (Project Solution)
Data Visualization with Streamlit
Plotting Data from Multiple Files (Tutorial)
Plot Numbers from Files (Project Description)
Plot Numbers from Files (Project Solution)
Polars Data Analysis Library
Analyzing Car Specifications (Tutorial)
Analyze Plant Data (Project Description)
Analyze Plant Data (Project Solution)
Data Analysis and Visualization with Polars
Analyzing Weather Data (Tutorial)
Analyze Car Sales (Project Description)
Analyze Car Sales (Project Solution)
Mobile Apps with Kivy
Translator Mobile App with Kivy (Tutorial)
Adding Numbers Mobile App with Kivy (Project Description)
Adding Numbers Mobile App with Kivy (Project Solution)
Extracting Data from USGS API
Earthquake Data for Any Date Range (Tutorial)
Earthquake Data for Yesterday (Project Description)
Earthquake Data for Yesterday (Project Solution)
PyQt Desktop GUI Library
Temperature Converter (Tutorial)
BMI Calculator (Project Description)
BMI Calculator (Project Solution)
Building GUIs with PyQt
Data Entry Desktop GUI (Tutorial)

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Offers a hands-on approach with 50 instructor-led projects and 50 independent projects, fostering practical application of Python concepts
Develops skills in areas like batch file processing, string manipulation, and data conversion, which are useful for automating tasks
Includes building REST APIs with Flask, command-line applications, and web apps with Streamlit, which are valuable for full-stack development
Explores data analysis and visualization with Polars, which is a modern library known for its speed and efficiency in handling large datasets
Covers building mobile apps with Kivy and desktop GUIs with PyQt, which are useful for creating cross-platform applications
Requires a basic understanding of Python concepts like variables, data types, loops, conditionals, and functions, which may require additional learning

Save this course

Save Learn Python by Doing with 100 Projects to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Learn Python by Doing with 100 Projects with these activities:
Review Python Fundamentals
Reinforce your understanding of core Python concepts like variables, data types, loops, and functions to prepare for building more complex projects.
Show steps
  • Review online tutorials covering basic Python syntax and data structures.
  • Complete practice exercises on variables, loops, and conditional statements.
  • Write simple Python scripts to solidify your understanding of functions.
Help Others in Online Forums
Solidify your understanding by helping other students in online forums or communities with their Python questions.
Show steps
  • Find online forums or communities where Python learners ask questions.
  • Browse the questions and identify those you can answer based on your knowledge.
  • Provide clear and concise explanations, code examples, and links to relevant resources.
Read 'Automate the Boring Stuff with Python'
Gain practical skills in automating tasks with Python, complementing the project-based learning approach of the course.
Show steps
  • Read the chapters relevant to file processing, string manipulation, and working with Excel.
  • Try out the code examples and modify them to suit your own needs.
  • Complete the practice projects at the end of each chapter.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Build a Simple File Organizer
Apply your knowledge of file processing and string manipulation to create a tool that organizes files into directories based on their extension.
Show steps
  • Define the criteria for organizing files (e.g., file extension, date created).
  • Write a Python script to iterate through a directory and move files based on the defined criteria.
  • Add error handling to handle unexpected file types or permissions issues.
  • Test the script on a sample directory and refine as needed.
Read 'Python Cookbook'
Explore advanced Python techniques and best practices to enhance your coding skills and tackle more complex projects.
Show steps
  • Browse the table of contents and identify topics that align with your interests or project needs.
  • Read the relevant recipes and try out the code examples.
  • Adapt the recipes to solve your own programming problems.
Document Your Project Journey
Reflect on your learning experience by creating a blog post or video series documenting your progress through the 100 projects.
Show steps
  • Choose a platform for documenting your journey (e.g., blog, YouTube).
  • Document the challenges you faced and how you overcame them.
  • Share your code and explain your design choices.
  • Solicit feedback from other learners and incorporate it into your documentation.
Contribute to a Python Library
Deepen your understanding of Python by contributing to an open-source library related to data processing or web development.
Show steps
  • Identify a Python library that aligns with your interests and skills.
  • Review the library's documentation and contribution guidelines.
  • Find an open issue or bug to fix, or propose a new feature.
  • Submit a pull request with your changes and address any feedback from the maintainers.

Career center

Learners who complete Learn Python by Doing with 100 Projects will develop knowledge and skills that may be useful to these careers:
Python Developer
A Python developer specializes in creating applications using the Python programming language. This course is specifically tailored to build Python skills through 100 different projects. Individuals seeking a career as a Python developer will find this course highly beneficial due to the hands-on approach of building practical applications, which aligns directly with the demands of the role. The course covers many topics, such as web applications using Flask and Streamlit, and mobile apps with Kivy, which are commonly used by Python developers. This course helps build confidence and the ability to tackle new programming challenges.
Software Developer
A software developer designs, develops, and tests software applications. This role involves a lot of hands-on coding, which aligns perfectly with the structure of this course. This course focuses on building real-world applications, providing practical experience that a software developer would find invaluable. The course's emphasis on independent projects also helps to develop the problem solving skills needed for this role. The practical experience of building 100 Python projects can help build a strong portfolio for any aspiring software developer. This course may be useful at any stage of a career.
Backend Developer
A backend developer is focused on the server-side logic, databases, and APIs of applications. This course is directly relevant to backend development work because it covers key areas like building REST APIs using Flask, processing JSON data, and working with databases through SQL. The skills gained from the projects, like working with different data formats and manipulating data, are all highly applicable to the work done by a backend developer. Completing the 100 hands-on projects helps develop the confidence required for tackling real-world backend development tasks. This course may be useful for backend developers.
Automation Engineer
Automation engineers design, develop, and implement automated systems and processes. This course may be very useful for any automation engineers because it provides practical instruction on how to program in Python. The skills gained in building 100 projects, particularly the ones that involve batch file processing, manipulating JSON, and interacting with the operating system through command-line applications, are highly valuable for automating repetitive tasks and creating custom solutions. Many of the projects in the course, such as processing text files and manipulating data, can assist with automation tasks.
Web Developer
A web developer builds and maintains websites and web applications, often using programming languages. This course is extremely helpful for any aspiring web developer because it covers key skills needed in this role, particularly through building REST APIs with Flask, and creating utility web applications with Streamlit. The hands-on, project-focused learning approach of this course allows one to build a diverse portfolio of web projects. This course may be useful for building confidence and the ability to independently tackle programming challenges involved in web development.
Business Intelligence Analyst
A business intelligence analyst analyzes data to identify trends and insights that can help improve business decisions. This course is helpful because it teaches essential Python skills used for data manipulation and analysis. The skills developed in handling data in different formats, like Excel, CSV, and JSON, and the course’s data analysis projects, make it a good fit for someone aspiring to be a business intelligence analyst. The course may help build a foundational understanding of how to use Python to analyze data.
Data Analyst
A data analyst examines, interprets, and presents data to help organizations make better decisions. This course may be useful to an aspiring data analyst, as it builds crucial Python skills that are relevant to data manipulation and analysis. The course covers topics such as manipulating JSON data, converting between Excel, CSV, and JSON, and using the Polars data analysis library. The hands-on experience gained by building 100 projects, along with familiarity with SQL queries, may help an aspiring data analyst in handling real-world datasets.
Mobile Application Developer
Mobile application developers are responsible for creating applications that run on mobile devices. This course may be helpful for someone wishing to become a mobile application developer using Python, as the course includes a section on building mobile apps with the Kivy library. This course provides the opportunity to develop a portfolio of 100 projects that includes mobile applications and helps build skills in independent project execution, which are crucial in this role. The course provides a practical approach to understanding and applying Python.
Full-Stack Developer
A full stack developer is someone who works on both the front-end and back-end aspects of an application. This course helps build the back-end skills of an aspiring full stack developer, particularly through projects that involve building REST APIs with Flask, and creating web applications using Streamlit. The course's focus on hands-on, project-based learning allows one to develop a diverse portfolio that could be useful for front and back end development. The practical approach to building 100 projects helps cultivate the confidence to tackle a range of programming tasks involved in full stack development. This course may be useful for anyone seeking a career in full stack development.
Data Engineer
A data engineer designs, builds, and maintains the infrastructure that allows data to be used by data scientists and analysts. This course may be useful for a data engineer, providing training in crucial Python skills necessary for data manipulation, and workflow automation. The course covers areas such as converting data between formats like Excel, CSV, and JSON, and processing data with the Polars library. The practical experience gained from the various project based learning, including batch file processing and building command-line applications, helps build many of the practical skills a data engineer would use.
Research Assistant
A research assistant typically works in academic or industry research settings, assisting with data collection, analysis, and report writing. The skills this course teaches, in converting and analyzing various types of data files including Excel, CSV, JSON, and text files, are highly applicable to the work of a research assistant. The course may help build a foundation in data manipulation and analysis, which is directly relevant in research. The program's focus on hands-on programming and problem solving helps an aspiring research assistant learn to tackle real-world challenges.
IT Support Specialist
An IT support specialist provides technical assistance to users of computer systems and software. This course may be useful because it imparts a wide range of technical skills. Some of the material covered in the course could be relevant to IT support, including developing command-line applications and manipulating a lot of different data formats including Excel, JSON, CSV. Furthermore, the wide ranging nature of the projects in this course mean that an aspiring IT support specialist may come to understand the challenges in a wide range of technical fields.
Database Administrator
A database administrator manages and maintains databases to ensure they function effectively. This course may be helpful to an aspiring database administrator because it includes a section on SQL queries. This course also covers manipulating a wide range of data types. The course's hands-on approach offers a unique way to develop skills applicable to database management. The practical experience gained from building 100 projects may help in handling a variety of data related situations.
Project Manager
A project manager plans, organizes, and manages projects to ensure they are completed on time and within budget. While the course does not teach project management skills explicitly, the practical experience gained in structuring one's own code independently and problem-solving that comes from building 100 diverse projects can help. The course may help develop an understanding of the complexities involved in development, which is indirectly beneficial to a project manager working with development teams. The course also helps build the capacity to plan and execute large projects.
Technical Writer
A technical writer creates documentation for software and hardware products. This course is helpful for a technical writer as it provides real-world experience in software development. By completing the 100 projects covered by this course, a technical writer will gain first-hand knowledge of Python and the challenges developers face, and may therefore be able to write and communicate more effectively about them. This may allow for better accuracy and clarity in the documentation a technical writer produces.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Learn Python by Doing with 100 Projects.
The Python Cookbook comprehensive guide to advanced Python programming techniques. It's an excellent resource for experienced programmers looking to deepen their understanding of Python and learn best practices. The book covers a wide range of topics, including data structures, algorithms, metaprogramming, and concurrency. It's particularly useful as a reference for solving complex programming problems and optimizing Python code. adds more depth to the existing course.
Provides a practical introduction to Python programming, focusing on automating everyday tasks. It's particularly useful for beginners and those looking to apply Python to real-world problems. The book covers a wide range of topics, including web scraping, working with Excel spreadsheets, and automating file system tasks. It serves as a great companion to the course, offering additional examples and exercises to reinforce learning.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser