When you enroll in this course, you'll also be enrolled in this Specialization.
Learn new concepts from industry experts
Gain a foundational understanding of a subject or tool
Develop job-relevant skills with hands-on projects
Earn a shareable career certificate
There are 4 modules in this course
This course introduces the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures. You'll program an on-screen Turtle to draw pretty pictures. You'll also learn to draw reference diagrams as a way to reason about program executions, which will help to build up your debugging skills. The course has no prerequisites. It will cover Chapters 1-9 of the textbook "Fundamentals of Python Programming," which is the accompanying text (optional and free) for this course.
The course is for you if you're a newcomer to Python programming, if you need a refresher on Python basics, or if you may have had some exposure to Python programming but want a more in-depth exposition and vocabulary for describing and reasoning about programs.
This is the first of five courses in the Python 3 Programming Specialization.
In week one you will be introduced to programming in python through lectures and the Runestone textbook - an interactive online textbook built for this course. By the end of the module, you will have run your first python program, and learned how to draw images by writing a program.
What's included
30 videos2 readings1 assignment36 app items
Show info about module content
30 videos•Total 174 minutes
Introduction to the Specialization•11 minutes
What’s New? Updates and Improvements in the Second Edition•2 minutes
How to Use the Interactive Textbook•14 minutes
Getting Started•7 minutes
Introduction - Programming in Python•1 minute
Values and Data Types•7 minutes
Operators and Operands•6 minutes
Function Calls•10 minutes
Data Types•6 minutes
Type Conversion Functions•6 minutes
Variables•11 minutes
Statements and Expressions•8 minutes
More About Statements and Expressions•7 minutes
Updating Variables•7 minutes
Hard-Coding•3 minutes
Input•6 minutes
Conclusion - Programming in Python•1 minute
Introduction - Objects and Turtle Graphics•1 minute
Our First Turtle Program•7 minutes
Instances: A Herd of Turtles•7 minutes
Repetition with a For Loop•6 minutes
More Turtle Methods•2 minutes
Importing Modules•9 minutes
Conclusion - Turtle Graphics•1 minute
Introduction - Debugging•1 minute
Syntax, Runtime, and Semantic Errors•6 minutes
Know Your Error Messages•4 minutes
Incremental Programming•6 minutes
Common Errors•6 minutes
Conclusion - Debugging•2 minutes
2 readings•Total 20 minutes
Syllabus•10 minutes
Help Us Learn More About You!•10 minutes
1 assignment•Total 4 minutes
Optional - What Did You Use to Practice This Week?•4 minutes
36 app items•Total 396 minutes
Gamut Goal Setter•4 minutes
Values and Data Types•10 minutes
Use the Practice Tool•1 minute
Operators and Operands•10 minutes
Order of Operations•10 minutes
Function Calls•10 minutes
Data Types•10 minutes
Type Conversion Functions•10 minutes
Variables•10 minutes
Variable Names and Keywords•10 minutes
Choosing the Right Variable Name•10 minutes
Reassignment•10 minutes
Statements and Expressions•10 minutes
Updating Variables•10 minutes
Hard-Coding•10 minutes
Input•10 minutes
Interactive Textbook Practice Opportunity•1 minute
Hello Little Turtles!•10 minutes
Our First Turtle Program•10 minutes
Instances: A Herd of Turtles•10 minutes
Object Oriented Concepts•10 minutes
Repetition with a For Loop•10 minutes
A Few More Turtle Methods and Observations•10 minutes
Summary of Turtle Methods•10 minutes
Importing Modules•10 minutes
The Random Module•10 minutes
Syntax Errors•10 minutes
Runtime Errors•10 minutes
Semantic Errors•10 minutes
Know Your Error Messages•10 minutes
Incremental Programming•10 minutes
Common Errors•10 minutes
Practice Assignment - Turtle and Object Mechanics•10 minutes
Gallery Tool: Turtle Drawing•60 minutes
Assessment - Programming in Python•15 minutes
Assessment: Turtle Graphics•15 minutes
Sequences and Iteration
Module 2•6 hours to complete
Module details
In week two you will use the lectures and the Runestone textbook to understand the basics of a few python data types - lists, strings, tuples - as well as a control structure - for loops. By the end of this week, you will be able to write more complex programs that create drawings by incorporating for loops. Finally, we will present the basics of an accumulation pattern to you, which will be expanded on in each week for the rest of the course.
What's included
22 videos1 assignment24 app items
Show info about module content
22 videos•Total 110 minutes
Introduction: Lists and Strings•1 minute
Strings•8 minutes
Lists•3 minutes
Tuples•3 minutes
The Index Operator•8 minutes
Length•7 minutes
The Slice Operator•11 minutes
Examples of Slicing and Indexing•7 minutes
Concatenation and Repetition•6 minutes
Count and Index•10 minutes
Split and Join•7 minutes
Conclusion: Lists and Strings•1 minute
Introduction: Iteration•1 minute
The For Loop•12 minutes
The Accumulator Pattern•5 minutes
The Range Function•5 minutes
Conclusion: Iteration•1 minute
Introduction: The Way of the Programmer•1 minute
Naming Your Variables in For Loops•3 minutes
Printing Intermediate Results•4 minutes
Keeping Track of Your Iterator Variable and Your Iterable•4 minutes
Conclusion: The Way of the Programmer•1 minute
1 assignment•Total 4 minutes
Optional - What Did You Use to Practice This Week?•4 minutes
24 app items•Total 250 minutes
Interactive Textbook Practice Opportunity•10 minutes
Introduction: Sequences•10 minutes
Strings, Lists, and Tuples•10 minutes
Index Operator: Working with the Characters of a String and Accessing Elements in a List•10 minutes
Disambiguating []: Creation vs. Indexing•10 minutes
Length•10 minutes
The Slice Operator•10 minutes
Concatenation and Repetition•10 minutes
Count and Index•10 minutes
Splitting and Joining Strings•10 minutes
Introduction: Iteration•10 minutes
The for Loop•10 minutes
Flow of Execution of the for Loop•10 minutes
Strings and for Loops•10 minutes
Lists and for Loops•10 minutes
The Accumulator Pattern and the Range Function•10 minutes
(Optional) Traversal and the for Loop: By Index•10 minutes
Keeping Track of Your Iterator Variable and Your Iterable•10 minutes
Assessment - Lists and Strings•15 minutes
Assessment - Week Two•15 minutes
Booleans and Conditionals
Module 3•4 hours to complete
Module details
In week three you will learn a new python data type - the boolean - as well as another control structure - conditional execution. Through the use of video lectures and the Runestone textbook, you will learn what Binary, Unary, Nested, and Chained Conditionals are, as well as how to incorporate conditionals within an accumulation pattern.
What's included
13 videos1 assignment17 app items
Show info about module content
13 videos•Total 77 minutes
Introduction: Boolean Expressions•1 minute
Boolean Expressions•8 minutes
Logical Operators•11 minutes
The in and not in Operators•3 minutes
Precedence of Operators•2 minutes
Automated Tests with assert•8 minutes
Conclusion: Boolean Expressions•1 minute
Introduction: Conditional Execution•1 minute
Conditional Execution•9 minutes
Unary Selection, Nested Conditionals, and Chained Conditionals•16 minutes
Testing Conditionals•5 minutes
The Accumulator Pattern with Conditionals and Accumulating a Maximum Value•11 minutes
Conclusion: Conditional Execution•1 minute
1 assignment•Total 4 minutes
Optional - What Did You Use to Practice This Week?•4 minutes
17 app items•Total 175 minutes
Interactive Textbook Practice Opportunity•10 minutes
Intro: What We Can Do with Turtles and Conditionals•10 minutes
Omitting the else Clause: Unary Selection•10 minutes
Nested Conditionals•10 minutes
Chained Conditionals•10 minutes
Make a Flow Chart before You Write Your Code•10 minutes
Testing Conditionals•10 minutes
The Accumulator Pattern with Conditionals•10 minutes
Assessment - Week Three•15 minutes
Sequence Mutation and Accumulation Patterns
Module 4•7 hours to complete
Module details
In week four we will present deeper knowledge on using lists, strings, and python objects in general. We will also cover how to use the accumulation pattern with lists and with strings. The final assignment will test your knowledge and skills through application, much like previous assessments and assignments did, though with a more difficult set of tasks now that you have learned the basics.
What's included
23 videos2 readings21 app items
Show info about module content
23 videos•Total 96 minutes
Introduction - Sequence Mutation•1 minute
Mutability•12 minutes
List Element Deletion•2 minutes
Objects and References•4 minutes
Aliasing•3 minutes
Cloning Lists•3 minutes
Conclusion - Sequence Mutation•1 minute
Introduction - Methods on Lists and Strings•1 minute
Methods on Lists•9 minutes
Append vs. Concatenate•8 minutes
Non-Mutating Methods on Strings•8 minutes
String Format Method•8 minutes
f-strings•5 minutes
Conclusion: Methods on Lists and Strings•1 minute
Introduction - Accumulating Lists and Strings•1 minute
The Accumulator Pattern with Lists•5 minutes
The Accumulator Pattern with Strings•4 minutes
Conclusion: Accumulating Lists and Strings•1 minute
Introduction - Way of the Programmer•1 minute
Making Reference Diagrams•4 minutes
Accumulator Pattern Strategies•9 minutes
Conclusion - Way of the Programmer•1 minute
Introduction - Final Course Assignment•4 minutes
2 readings•Total 20 minutes
Course Feedback•10 minutes
Keep Learning with Michigan Online•10 minutes
21 app items•Total 280 minutes
Interactive Textbook Practice Opportunity•10 minutes
Introduction: Transforming Sequences•10 minutes
Mutability•10 minutes
List Element Deletion•10 minutes
Objects and References•10 minutes
Aliasing•10 minutes
Cloning Lists•10 minutes
Methods on Lists•10 minutes
Append vs. Concatenate•10 minutes
Non-Mutating Methods on Strings•10 minutes
String Format Method•10 minutes
f-Strings•10 minutes
The Accumulator Pattern with Lists•10 minutes
The Accumulator Pattern with Strings•10 minutes
Accumulator Pattern Strategies•10 minutes
Don't Mutate A List That You Are Iterating Through•10 minutes
Assessment - Sequence Mutation•15 minutes
Assessment - Methods: Lists and Strings•15 minutes
Assessment - Accumulating Lists and Strings•15 minutes
Assessment - Way of the Programmer•15 minutes
Assignment: Final Course Assignment•60 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructors
Instructor ratings
Instructor ratings
We asked all learners to give feedback on our instructors based on the quality of their teaching style.
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.
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Learner reviews
4.8
18,425 reviews
5 stars
84.01%
4 stars
13.69%
3 stars
1.40%
2 stars
0.35%
1 star
0.53%
Showing 3 of 18425
P
PY
5·
Reviewed on May 30, 2020
This course is very good for beginners. The content and flow of the course is amazing. online practice tool to run our codes online without installing any software makes is even more user friendly.
S
SS
4·
Reviewed on May 28, 2020
A very good course to start and learn basics!! I will definitely recommend it to noobs in programming.Deducted one star for not including tuples and dictionary! rest it is very thorough and enjoyable.
J
JS
5·
Reviewed on May 1, 2023
Great course and easy to follow. The only suggestion I have is to do lesson 2 the best you can then move on because some of the practice questions have answers from lessons that come after this one.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Specialization?
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.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.