- Level Foundation
- Duration 34 hours
- Course by University of Michigan
-
Offered by
About
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.Modules
Welcome to Python Basics!
1
External Tool
- Gamut Goal Setter
4
Videos
- Introduction to the Specialization
- What’s New? Updates and Improvements in the Second Edition
- How to Use the Interactive Textbook
- Getting Started
2
Readings
- Syllabus
- Help Us Learn More About You!
Programming in Python
16
External Tool
- Values and Data Types
- Use the Practice Tool
- Operators and Operands
- Order of Operations
- Function Calls
- Data Types
- Type Conversion Functions
- Variables
- Variable Names and Keywords
- Choosing the Right Variable Name
- Reassignment
- Statements and Expressions
- Updating Variables
- Hard-Coding
- Input
- Assessment - Programming in Python
13
Videos
- Introduction - Programming in Python
- Values and Data Types
- Operators and Operands
- Function Calls
- Data Types
- Type Conversion Functions
- Variables
- Statements and Expressions
- More About Statements and Expressions
- Updating Variables
- Hard-Coding
- Input
- Conclusion - Programming in Python
Turtle Graphics
11
External Tool
- Interactive Textbook Practice Opportunity
- Hello Little Turtles!
- Our First Turtle Program
- Instances: A Herd of Turtles
- Object Oriented Concepts
- Repetition with a For Loop
- A Few More Turtle Methods and Observations
- Summary of Turtle Methods
- Importing Modules
- The Random Module
- Assessment: Turtle Graphics
7
Videos
- Introduction - Objects and Turtle Graphics
- Our First Turtle Program
- Instances: A Herd of Turtles
- Repetition with a For Loop
- More Turtle Methods
- Importing Modules
- Conclusion - Turtle Graphics
The Way of the Programmer
1
Assignment
- Optional - What Did You Use to Practice This Week?
8
External Tool
- Syntax Errors
- Runtime Errors
- Semantic Errors
- Know Your Error Messages
- Incremental Programming
- Common Errors
- Practice Assignment - Turtle and Object Mechanics
- Gallery Tool: Turtle Drawing
6
Videos
- Introduction - Debugging
- Syntax, Runtime, and Semantic Errors
- Know Your Error Messages
- Incremental Programming
- Common Errors
- Conclusion - Debugging
Lists and Strings
11
External Tool
- Interactive Textbook Practice Opportunity
- Introduction: Sequences
- Strings, Lists, and Tuples
- Index Operator: Working with the Characters of a String and Accessing Elements in a List
- Disambiguating []: Creation vs. Indexing
- Length
- The Slice Operator
- Concatenation and Repetition
- Count and Index
- Splitting and Joining Strings
- Assessment - Lists and Strings
12
Videos
- Introduction: Lists and Strings
- Strings
- Lists
- Tuples
- The Index Operator
- Length
- The Slice Operator
- Examples of Slicing and Indexing
- Concatenation and Repetition
- Count and Index
- Split and Join
- Conclusion: Lists and Strings
Iteration
9
External Tool
- Introduction: Iteration
- The for Loop
- Flow of Execution of the for Loop
- Strings and for Loops
- Lists and for Loops
- The Accumulator Pattern and the Range Function
- (Optional) Traversal and the for Loop: By Index
- (Optional) Nested Iteration: Image Processing
- (Optional) The Gory Details: Iterables
5
Videos
- Introduction: Iteration
- The For Loop
- The Accumulator Pattern
- The Range Function
- Conclusion: Iteration
The Way of the Programmer
1
Assignment
- Optional - What Did You Use to Practice This Week?
4
External Tool
- Naming Variables in For Loops
- Printing Intermediate Results
- Keeping Track of Your Iterator Variable and Your Iterable
- Assessment - Week Two
5
Videos
- Introduction: The Way of the Programmer
- Naming Your Variables in For Loops
- Printing Intermediate Results
- Keeping Track of Your Iterator Variable and Your Iterable
- Conclusion: The Way of the Programmer
Boolean Expressions
9
External Tool
- Interactive Textbook Practice Opportunity
- Intro: What We Can Do with Turtles and Conditionals
- Boolean Values and Boolean Expressions
- Logical Operators
- The in and not in Operators
- Precedence of Operators
- Introduction: Test Cases
- Checking Assumptions About Data Types
- Checking Other Assumptions
7
Videos
- Introduction: Boolean Expressions
- Boolean Expressions
- Logical Operators
- The in and not in Operators
- Precedence of Operators
- Automated Tests with assert
- Conclusion: Boolean Expressions
Conditional Execution
1
Assignment
- Optional - What Did You Use to Practice This Week?
8
External Tool
- Conditional Execution: Binary Selection
- Omitting the else Clause: Unary Selection
- Nested Conditionals
- Chained Conditionals
- Make a Flow Chart before You Write Your Code
- Testing Conditionals
- The Accumulator Pattern with Conditionals
- Assessment - Week Three
6
Videos
- Introduction: Conditional Execution
- Conditional Execution
- Unary Selection, Nested Conditionals, and Chained Conditionals
- Testing Conditionals
- The Accumulator Pattern with Conditionals and Accumulating a Maximum Value
- Conclusion: Conditional Execution
Sequence Mutation
8
External Tool
- Interactive Textbook Practice Opportunity
- Introduction: Transforming Sequences
- Mutability
- List Element Deletion
- Objects and References
- Aliasing
- Cloning Lists
- Assessment - Sequence Mutation
7
Videos
- Introduction - Sequence Mutation
- Mutability
- List Element Deletion
- Objects and References
- Aliasing
- Cloning Lists
- Conclusion - Sequence Mutation
Methods on Strings and Lists
6
External Tool
- Methods on Lists
- Append vs. Concatenate
- Non-Mutating Methods on Strings
- String Format Method
- f-Strings
- Assessment - Methods: Lists and Strings
7
Videos
- Introduction - Methods on Lists and Strings
- Methods on Lists
- Append vs. Concatenate
- Non-Mutating Methods on Strings
- String Format Method
- f-strings
- Conclusion: Methods on Lists and Strings
Accumulating Lists and Strings
3
External Tool
- The Accumulator Pattern with Lists
- The Accumulator Pattern with Strings
- Assessment - Accumulating Lists and Strings
4
Videos
- Introduction - Accumulating Lists and Strings
- The Accumulator Pattern with Lists
- The Accumulator Pattern with Strings
- Conclusion: Accumulating Lists and Strings
The Way of the Programmer
3
External Tool
- Accumulator Pattern Strategies
- Don't Mutate A List That You Are Iterating Through
- Assessment - Way of the Programmer
4
Videos
- Introduction - Way of the Programmer
- Making Reference Diagrams
- Accumulator Pattern Strategies
- Conclusion - Way of the Programmer
Python Basics - Final Course Assignment
1
External Tool
- Assignment: Final Course Assignment
1
Videos
- Introduction - Final Course Assignment
Course Feedback
2
Readings
- Course Feedback
- Keep Learning with Michigan Online
Auto Summary
Explore the essentials of Python 3 with this foundational course in IT & Computer Science. Led by Coursera, the course covers basic programming concepts including conditional execution, iteration, and data structures like strings and lists. Perfect for beginners or those needing a refresher, it also includes hands-on projects like drawing with Python's Turtle and building debugging skills. The course spans 2040 minutes and is part of a five-course Python 3 Programming Specialization, available through Starter, Professional, and Paid subscriptions. Ideal for anyone new to Python or looking to deepen their understanding.

Paul Resnick

Steve Oney