Learn Python Online with the University of Michigan
Build practical Python programming skills with online courses from the University of Michigan. Whether you're learning to code for the first time or building advanced skills in data science, statistics, machine learning, and debugging, find a Python course series that can help you take your next step.
Why Learn Python?
Learning Python can expand what you're able to do at work—and where you can go next in your career.
Python skills are used across data analysis, artificial intelligence, automation, software development, research, and other growing areas of work. Building those skills can help you take on more technical responsibilities, work more confidently with data, and prepare for roles where programming is increasingly valuable.
Whether you're adding Python to your current skill set or preparing for a career change, you can choose the level and focus that moves you toward your next professional goal.
Where should beginners start learning Python?
Python for Everybody is a starting point for learners who have never programmed. Its opening course, Programming for Everybody (Getting Started with Python), requires no prior programming experience and uses simple mathematics.
Python 3 Programming offers a deeper treatment of programming fundamentals and more practice. It can follow Python for Everybody or serve as a starting point for learners who know another programming language. Creative Coding: Hands-On Python offers another way to approach programming through creative projects.
-
SeriesPython for Everybody
Build foundational Python skills for data analysis, web applications, and practical computing tasks.
-
SeriesPython 3 Programming
Learn Python 3 programming fundamentals for problem-solving, software development, and automation.
-
SeriesCreative Coding: Hands-On Python
Use Python for creative coding projects that blend programming, visual art, interactivity, and computational thinking.
Choose Python courses for statistics, data science, or debugging
Choose Statistics with Python when your priority is interpreting data and connecting research questions with statistical methods. Choose Applied Data Science with Python when you have a basic programming background and want to practice analysis, visualization, and machine learning.
For more advanced study, More Applied Data Science with Python extends into data mining and other methods for complex datasets. Its catalog lists additional preparation, including intermediate Python skills. Data-Oriented Python Programming and Debugging focuses on understanding and correcting problems in data-oriented code.
-
SeriesStatistics with Python
Use Python to perform statistical analysis, test hypotheses, and interpret real-world data effectively.
-
SeriesApplied Data Science with Python
Develop data science skills in Python, including data wrangling, visualization, machine learning, and applied analytics.
-
SeriesMore Applied Data Science with Python
Advance Python data science skills with deeper machine learning, text mining, and applied analytics techniques.
-
SeriesData-Oriented Python Programming and Debugging
Strengthen Python programming with data structures, problem-solving strategies, and effective debugging techniques.
Apply Python to design, sports, and generative AI
A specific application can help you decide what to learn next. The options below connect programming with design workflows, sports analysis, and generative AI. Review each course's tools and recommended experience before enrolling; these offerings do not all share the same starting requirements.
-
CourseDesign Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript
Learn Python and Rhino scripting to create computational design workflows and generate geometric forms through coding and procedural design.
-
CourseLlama for Python Programmers
Learn how to integrate Meta’s Llama 2 into Python workflows using prompting, quantization, and open-source LLMs for generative AI.
-
SeriesProgramming for Designers
Gain programming skills tailored for designers working in interactive media, graphics, and digital experiences.
-
SeriesSports Performance Analytics
Apply statistical analysis and data modeling to evaluate performance, strategy, and decision-making in sports.
Questions about learning Python online
-
What is the difference between Python for Everybody and Python 3 Programming?
-
Python for Everybody introduces programming through tasks involving data and databases. Python 3 Programming develops a deeper understanding of how programs work, with additional practice and topics such as class inheritance. Python 3 Programming can be a next step after Python for Everybody.
-
How much time should I plan for a Python learning experience?
-
Michigan Online offers in-depth course series on Python with estimated time spent between 50-120 hours. You can also explore individual courses within any series or explore initial interests by exploring a short course that can last between 4-8 hours. These are on-demand learning opportunities, and you can define your own study schedule and completion plan.
-
Can I take these courses at my own pace?
-
Yes, self-paced courses and course series options can be taken any time, any place. Review the enrollment page for the format and requirements of your chosen offering.
-
Are the Python courses free?
-
Current U-M students, alumni, faculty, and staff can use the U-M free-access option shown on participating course pages. Other learners should check the linked learning platform for current prices and enrollment options.