About this Course
Specialization
100% online

100% online

Start instantly and learn at your own schedule.
Flexible deadlines

Flexible deadlines

Reset deadlines in accordance to your schedule.
Beginner Level

Beginner Level

Hours to complete

Approx. 15 hours to complete

Suggested: 8 hours/week...
Available languages

English

Subtitles: English
Specialization
100% online

100% online

Start instantly and learn at your own schedule.
Flexible deadlines

Flexible deadlines

Reset deadlines in accordance to your schedule.
Beginner Level

Beginner Level

Hours to complete

Approx. 15 hours to complete

Suggested: 8 hours/week...
Available languages

English

Subtitles: English

Syllabus - What you will learn from this course

Week
1
Hours to complete
6 hours to complete

Files and CSV Output

In week one the video lectures and the Runestone textbook will introduce you to the idea of incorporating files into your programs as an additional source of data. You will learn how to read from a file, write to a file, and how to work with the .csv data format....
Reading
13 videos (Total 85 min), 14 readings, 3 quizzes
Video13 videos
How to Use the Interactive Textbook14m
Introduction: Files1m
Reading a File9m
Finding a File in Your File System6m
Writing to a File7m
Using With to Open Files5m
Conclusion: Files1m
Introduction: .csv Format3m
Reading a .csv File8m
Writing Data to a .csv File10m
Tips on File Naming2m
Conclusion: .csv Format1m
Reading14 readings
Syllabus10m
Help Us Learn More About You!10m
Introduction: Working with Data Files10m
Reading a File10m
Alternative File Reading Methods10m
Iterating Over Lines in a File10m
Finding a File in your File System10m
Writing to a File10m
Using With to Open Files10m
Recipe for Reading and Processing a File10m
CSV Format10m
Reading a .csv File10m
Writing Data to a .csv File10m
Tips on Handling Files10m
Quiz1 practice exercise
Optional - What Did You Use to Practice This Week?4m
Week
2
Hours to complete
6 hours to complete

Dictionaries and Dictionary Accumulation

In week two the video lectures and the Runestone textbook will focus on a new data type, dictionaries. You will be introduced to the mechanics of dictionaries and then get practice using them in accumulation patterns, both to build a dictionary using the pattern as well as find the best, or worst, result using the pattern....
Reading
10 videos (Total 77 min), 9 readings, 4 quizzes
Video10 videos
Demonstration: Dictionary Basics4m
Dictionary Operations7m
Dictionary Methods12m
Demonstration: Dictionary Methods3m
Aliasing and Copying with Dictionaries3m
Dictionary Accumulation13m
Demonstration: Dictionary Accumulation5m
Accumulating Results From a Dictionary12m
Demonstration: Accumulating Results From a Dictionary7m
Reading9 readings
Introduction: Dictionary Learning Goals10m
Introduction: Dictionaries10m
Dictionary Operations10m
Dictionary Methods10m
Aliasing and Copying10m
Introduction: Accumulating Multiple Results in a Dictionary10m
Accumulating Results From a Dictionary10m
Accumulating the Best Key10m
When to Use a Dictionary10m
Quiz1 practice exercise
Optional - What Did You Use to Practice This Week?4m
Week
3
Hours to complete
8 hours to complete

Functions and Tuples

In week three you will be introduced to the construction of functions. Up to this point, you have used functions in the programs before, but have not had a chance to write your own functions, including how to define a function, how to incorporate parameters, how to return data from a function, the local or global scope of variables, and potential side effects that could occur from function execution. Finally, we look at tuples more in depth, and how automatic packing and unpacking of tuples can be used in functions and in for loops....
Reading
16 videos (Total 81 min), 19 readings, 4 quizzes
Video16 videos
Defining Functions5m
Positional Parameter Passing6m
Returning Values12m
Way of the Programmer: Decoding a Function4m
A Function that Accumulates8m
Conclusion: Functions59s
Introduction: Variable Scoping and Side Effects48s
Local and Global Variables9m
Function Composition10m
Mutable Objects and Side Effects5m
Conclusion: Variable Scoping and Side Effects1m
Introduction: Tuple Packing and Unpacking40s
Tuple Packing3m
Tuple Assignment with Unpacking8m
Conclusion: Tuple Packing and Unpacking39s
Reading19 readings
Introduction to Functions10m
Function Definition10m
Function Invocation10m
Function Parameters10m
Returning a Value from a Function10m
Decoding a Function10m
A Function that Accumulates10m
Local Variables10m
Global Variables10m
Function Composition10m
Flow of Execution Summary10m
Print vs. Return10m
Passing Mutable Objects10m
Side Effects10m
Introduction10m
Tuple Packing10m
Tuples as Return Values10m
Tuple Assignment with Unpacking10m
Unpacking Into Iterator Variables10m
Quiz1 practice exercise
Optional - What Did You Use to Practice This Week?4m
Week
4
Hours to complete
6 hours to complete

More Iteration and Advanced Functions

In week four the video lectures and the Runestone textbook will outline a more advanced iteration mechanism, the while loop. You will be introduced to using it when getting feedback from users, as well as applying it to the turtle module to draw images. Additionally, you will also be exposed to more advanced function concepts such as the idea of parameters being optional, not required, and anonymous functions using lambda....
Reading
7 videos (Total 49 min), 10 readings, 4 quizzes
Video7 videos
The Listener Loop7m
Break and Continue5m
Way of the Programmer: Infinite Loops4m
Optional Parameters4m
Keyword Parameters7m
Anonymous Functions with Lambda Expressions5m
Reading10 readings
Introduction10m
The While Statement10m
The Listener Loop10m
Randomly Walking Turtles10m
Break and Continue10m
Infinite Loops10m
Introduction: Optional Parameters10m
Keyword Parameters10m
Anonymous Function with Lambda Expressions10m
Programming With Style10m
Quiz1 practice exercise
Optional - What Did You Use to Practice This Week?4m

Instructors

Avatar

Paul Resnick

Michael D. Cohen Collegiate Professor
School of Information
Avatar

Steve Oney

Assistant Professor
School of Information
Avatar

Jaclyn Cohen

Lecturer
School of Information

About University of Michigan

The mission of the University of Michigan is to serve the people of Michigan and the world through preeminence in creating, communicating, preserving and applying knowledge, art, and academic values, and in developing leaders and citizens who will challenge the present and enrich the future....

About the Python 3 Programming Specialization

This specialization teaches the fundamentals of programming in Python 3. We will begin at the beginning, with variables, conditionals, and loops, and get to some intermediate material like keyword parameters, list comprehensions, lambda expressions, and class inheritance. You will have lots of opportunities to practice. You will also learn ways to reason about program execution, so that it is no longer mysterious and you are able to debug programs when they don’t work. By the end of the specialization, you’ll be writing programs that query Internet APIs for data and extract useful information from them. And you’ll be able to learn to use new modules and APIs on your own by reading the documentation. That will give you a great launch toward being an independent Python programmer. This specialization is a good next step for you if you have completed Python for Everybody but want a more in-depth treatment of Python fundamentals and more practice, so that you can proceed with confidence to specializations like Applied Data Science with Python. But it is also appropriate as a first set of courses in Python if you are already familiar with some other programming language, or if you are up for the challenge of diving in head-first....
Python 3 Programming

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.