Please enable JavaScript to use CodeHS

Python Programming 1 and 2 - Outline

  1. Welcome

    1. 1.1 Welcome

    2. Video 1.1.1 Welcome
    3. Free Response 1.1.2 Welcome
  2. Karel in Python

    1. 2.1 Introduction to Programming With Karel

    2. Video 2.1.1 Introduction to Programming With Karel
    3. Check for Understanding 2.1.2 Quiz: Karel Commands
    4. Example 2.1.3 Our First Karel Program
    5. Exercise 2.1.4 Your First Karel Program
    6. Exercise 2.1.5 Short Stack
    7. Debugging 2.1.6 Dancing Karel
    8. 2.2 More Basic Karel

    9. Video 2.2.1 More Basic Karel
    10. Check for Understanding 2.2.2 More Basic Karel Quiz
    11. Example 2.2.3 Tennis Ball Square
    12. Exercise 2.2.4 Make a Tower
    13. Exercise 2.2.5 Pyramid of Karel
    14. Debugging 2.2.6 Go Through the Door
    15. 2.3 Karel Can't Turn Right

    16. Video 2.3.1 Karel Can't Turn Right
    17. Check for Understanding 2.3.2 Karel Can't Turn Right Quiz
    18. Example 2.3.3 Tower and Turn Right
    19. Exercise 2.3.4 Fireman Karel
    20. Exercise 2.3.5 Slide Karel
    21. Free Response 2.3.6 Reflection: Teaching Karel New Commands
    22. Badge 2.3.7 Right Turn Karel Badge
    23. 2.4 Functions in Karel

    24. Video 2.4.1 Functions in Karel
    25. Check for Understanding 2.4.2 Functions in Karel Quiz
    26. Example 2.4.3 Turn Around
    27. Exercise 2.4.4 Pancakes
    28. Exercise 2.4.5 Backflip
    29. Exercise 2.4.6 Digging Karel
    30. Debugging 2.4.7 Build a Shelter
    31. 2.5 Top Down Design and Decomposition in Karel

    32. Video 2.5.1 Top Down Design and Decomposition in Karel
    33. Check for Understanding 2.5.2 Top Down Design and Decomposition Quiz
    34. Example 2.5.3 Hurdle Karel
    35. Exercise 2.5.4 The Two Towers
    36. Debugging 2.5.5 Make a 'Z'
    37. Free Response 2.5.6 Reflection: Top Down Design
    38. 2.6 Commenting Your Code

    39. Video 2.6.1 Commenting Your Code
    40. Check for Understanding 2.6.2 Commenting Your Code Quiz
    41. Example 2.6.3 Hurdle Karel
    42. Exercise 2.6.4 The Two Towers + Comments
    43. Free Response 2.6.5 Reflection: Commenting
    44. 2.7 Abstraction

    45. Video 2.7.1 Abstraction
    46. Check for Understanding 2.7.2 Abstraction Quiz
    47. Example 2.7.3 Abstracting Away build_tower
    48. Free Response 2.7.4 Abstracting Your Day
    49. Free Response 2.7.5 Reflection: Abstraction
    50. Free Response 2.7.6 Reflection: Abstraction in Karel
    51. 2.8 Super Karel

    52. Video 2.8.1 Super Karel
    53. Check for Understanding 2.8.2 Super Karel Quiz
    54. Example 2.8.3 Hurdle Karel (with SuperKarel)
    55. Exercise 2.8.4 The Two Towers + SuperKarel
    56. Badge 2.8.5 Super Karel Badge
    57. 2.9 For Loops

    58. Video 2.9.1 For Loops
    59. Check for Understanding 2.9.2 For Loops Quiz
    60. Example 2.9.3 Repeated Move
    61. Example 2.9.4 Put Down Tennis Balls
    62. Exercise 2.9.5 Take 'em All
    63. Exercise 2.9.6 Dizzy Karel
    64. Exercise 2.9.7 For Loop Square
    65. Exercise 2.9.8 Lots of Hurdles
    66. 2.10 If Statements

    67. Video 2.10.1 If Statements
    68. Check for Understanding 2.10.2 If Statements Quiz
    69. Example 2.10.3 If Statements
    70. Example 2.10.4 Safe Take Ball
    71. Exercise 2.10.5 Is There a Ball?
    72. Survey 2.10.6 Mindsets
    73. 2.11 If/Else Statements

    74. Video 2.11.1 If/Else Statements
    75. Check for Understanding 2.11.2 If/Else Statements Quiz
    76. Example 2.11.3 If/Else Statements
    77. Example 2.11.4 One Ball in Each Spot
    78. Exercise 2.11.5 Right Side Up
    79. Badge 2.11.6 Conditional Karel Badge
    80. 2.12 While Loops in Karel

    81. Video 2.12.1 While Loops in Karel
    82. Check for Understanding 2.12.2 While Loops in Karel Quiz
    83. Example 2.12.3 Move to Wall
    84. Exercise 2.12.4 Follow The Yellow Ball Road
    85. Exercise 2.12.5 Lay Row of Tennis Balls
    86. Exercise 2.12.6 Big Tower
    87. 2.13 Control Structures Example

    88. Video 2.13.1 Control Structures Example
    89. Check for Understanding 2.13.2 Control Structures Example Quiz
    90. Example 2.13.3 Cleanup Karel
    91. Exercise 2.13.4 Random Hurdles
    92. 2.14 Debugging Strategies

    93. Video 2.14.1 Debugging Basics
    94. Check for Understanding 2.14.2 Debugging Basics
    95. Debugging 2.14.3 Debug: The Two Towers
    96. Debugging 2.14.4 Debug: Lots of Hurdles
    97. Video 2.14.5 Debugging From Error Messages
    98. Check for Understanding 2.14.6 Debugging with Error Messages
    99. Debugging 2.14.7 Debug: Big Tower
    100. Debugging 2.14.8 Debug: Random Hurdles
    101. 2.15 Algorithms

    102. Video 2.15.1 Karel Algorithms
    103. Check for Understanding 2.15.2 Quiz: Which Control Structure?
    104. Video 2.15.3 Algorithms Example: Move Stack
    105. Example 2.15.4 Move Tennis Ball Stack
    106. Example 2.15.5 Climbing Karel
    107. Exercise 2.15.6 Decorate the Fence
    108. 2.16 Ultra Karel

    109. Video 2.16.1 Ultra Karel
    110. Check for Understanding 2.16.2 Ultra Karel Quiz
    111. Example 2.16.3 Red Frame
    112. Example 2.16.4 Slip 'n Slide
    113. Exercise 2.16.5 Invert Colors
    114. Exercise 2.16.6 Checkerboard Karel
    115. Badge 2.16.7 Karel Exercises Badge
    116. 2.17 Karel Challenges

    117. Challenge 2.17.1 Fetch
    118. Challenge 2.17.2 Racing Karel
    119. Challenge 2.17.3 Tower Builder
    120. Challenge 2.17.4 Super Cleanup Karel
    121. Challenge 2.17.5 Double Tennis Balls
    122. Badge 2.17.6 Programming with Karel Bootcamp Badge
    123. 2.18 Introduction to Programming Quiz

    124. Unit Quiz 2.18.1 Introduction to Programming Quiz
  3. Basic Python and Console Interaction

    1. 3.1 Printing in Python

    2. Video 3.1.1 Printing in Python
    3. Check for Understanding 3.1.2 Printing in Python
    4. Example 3.1.3 Hello, world!
    5. Example 3.1.4 Printing Multiple Lines
    6. Exercise 3.1.5 Introduce Yourself
    7. Debugging 3.1.6 Fix This Program!
    8. Exercise 3.1.7 Vertical name
    9. 3.2 Variables and Types

    10. Video 3.2.1 Variables and Types
    11. Check for Understanding 3.2.2 Variables and Types
    12. Example 3.2.3 Variables in Action
    13. Example 3.2.4 Variable Types
    14. Example 3.2.5 Variable Naming
    15. Exercise 3.2.6 Make Some Variables!
    16. Debugging 3.2.7 Undefined Variables
    17. Badge 3.2.8 Variables Badge
    18. 3.3 User Input

    19. Video 3.3.1 User Input
    20. Check for Understanding 3.3.2 User Input
    21. Example 3.3.3 Basic User Input
    22. Example 3.3.4 Type Conversion
    23. Example 3.3.5 Type Conversion, Part 2
    24. Exercise 3.3.6 Hello <name>
    25. Exercise 3.3.7 Age
    26. 3.4 Mathematical Operators

    27. Video 3.4.1 Mathematical Operators
    28. Check for Understanding 3.4.2 Mathematical Operators
    29. Example 3.4.3 Operators and Integers
    30. Example 3.4.4 Operator Precedence
    31. Exercise 3.4.5 Add Parentheses
    32. Example 3.4.6 Division in Python
    33. Example 3.4.7 Operators and Floats
    34. Exercise 3.4.8 Rectangle
    35. 3.5 String Operators

    36. Video 3.5.1 String Operators
    37. Check for Understanding 3.5.2 String Operators
    38. Example 3.5.3 Operators and Strings
    39. Debugging 3.5.4 Fix This Program
    40. Example 3.5.5 Team Sizes
    41. Exercise 3.5.6 Introduce Yourself, Part 2
    42. Exercise 3.5.7 Rectangle, Part 2
    43. Exercise 3.5.8 Rectangle, Part 3
    44. Challenge 3.5.9 Recipe
    45. 3.6 Comments

    46. Video 3.6.1 Comments
    47. Check for Understanding 3.6.2 Comments
    48. Example 3.6.3 Commented Program
    49. Example 3.6.4 Trapezoid
    50. Exercise 3.6.5 Add Comments!
    51. 3.7 Programming Languages

    52. Video 3.7.1 Programming Languages
    53. Example 3.7.2 Dynamically Typed Languages
    54. Example 3.7.3 Statically Typed Languages
    55. Free Response 3.7.4 Dynamically Typed vs. Statically Typed Languages
    56. Video 3.7.5 Compiled Languages
    57. Video 3.7.6 Interpreted Languages
    58. Free Response 3.7.7 Compiled vs. Interpreted Languages
    59. Video 3.7.8 How Do Computers Read Code
    60. 3.8 Basic Python and Console Interaction Quiz

    61. Unit Quiz 3.8.1 Basic Python and Console Interaction Quiz
    62. Badge 3.8.2 Basic Python and Console Interaction Badge
  4. Project: Mad Libs

    1. 4.1 Project: Mad Libs

    2. Exercise 4.1.1 Project: Mad Libs
  5. Conditionals

    1. 5.1 Booleans

    2. Video 5.1.1 Booleans
    3. Check for Understanding 5.1.2 Booleans
    4. Example 5.1.3 Boolean Variables
    5. Debugging 5.1.4 Fix This Program
    6. Exercise 5.1.5 Plants
    7. 5.2 If Statements

    8. Video 5.2.1 If Statements
    9. Check for Understanding 5.2.2 If Statements
    10. Example 5.2.3 Your First If Statement
    11. Example 5.2.4 If/Else Statement
    12. Debugging 5.2.5 Fix This Program
    13. Exercise 5.2.6 Is It Raining?
    14. Badge 5.2.7 Conditional Badge
    15. 5.3 Comparison Operators

    16. Video 5.3.1 Comparison Operators
    17. Check for Understanding 5.3.2 Comparison Operators
    18. Example 5.3.3 Comparison Operators
    19. Example 5.3.4 High Jump
    20. Example 5.3.5 Roller Coaster
    21. Exercise 5.3.6 Old Enough to Vote?
    22. Exercise 5.3.7 Positive, Zero, or Negative?
    23. Example 5.3.8 Age Group
    24. Exercise 5.3.9 Table Reservation
    25. Challenge 5.3.10 Transaction
    26. 5.4 Logical Operators

    27. Video 5.4.1 Logical Operators
    28. Check for Understanding 5.4.2 Logical Operators
    29. Example 5.4.3 Logical Operators
    30. Exercise 5.4.4 Administrators, Teachers, and Students
    31. Exercise 5.4.5 Presidential Eligibility
    32. Challenge 5.4.6 Presidential Eligibility- Extended
    33. 5.5 Floating Point Numbers and Rounding

    34. Video 5.5.1 Floating Point Numbers and Rounding
    35. Check for Understanding 5.5.2 Floating Point Numbers and Rounding
    36. Example 5.5.3 Rounding Error
    37. Exercise 5.5.4 Correct Portion
    38. 5.6 Conditionals Quiz

    39. Unit Quiz 5.6.1 Conditionals Quiz
  6. Project: Quiz Game

    1. 6.1 Project: Quiz Game

    2. Exercise 6.1.1 Project: Quiz Game
  7. Looping

    1. 7.1 While Loops

    2. Video 7.1.1 While Loops
    3. Check for Understanding 7.1.2 While Loops
    4. Example 7.1.3 Guess My Number
    5. Example 7.1.4 Program Tracing
    6. Example 7.1.5 Program Tracing, Part 2
    7. Exercise 7.1.6 2 Through 20 Even
    8. Exercise 7.1.7 Divisibility
    9. 7.2 For Loops

    10. Video 7.2.1 For Loops
    11. Check for Understanding 7.2.2 For Loops
    12. Example 7.2.3 Print 10 Numbers
    13. Example 7.2.4 1 Through 10, Part 2
    14. Exercise 7.2.5 Counting 10 to 100 by Tens
    15. Example 7.2.6 Running Total
    16. Example 7.2.7 Running Total, Part 2
    17. Exercise 7.2.8 Average Test Score
    18. Exercise 7.2.9 How Many Names?
    19. Badge 7.2.10 Loops Badge
    20. Survey 7.2.11 Mindset Survey 2
    21. 7.3 Break and Continue

    22. Video 7.3.1 Break and Continue
    23. Check for Understanding 7.3.2 Break and Continue
    24. Example 7.3.3 Break
    25. Example 7.3.4 Continue
    26. Example 7.3.5 Bike Frame Size
    27. Example 7.3.6 Loop and a Half
    28. Exercise 7.3.7 Higher/ Lower
    29. Challenge 7.3.8 Higher / Lower 2.0
    30. 7.4 Nested Control Structures

    31. Video 7.4.1 Nested Control Structures
    32. Check for Understanding 7.4.2 Nested Control Structures
    33. Example 7.4.3 Double For Loop
    34. Example 7.4.4 Average Test Score, Part 2
    35. Example 7.4.5 For Loop + While Loop
    36. Exercise 7.4.6 Rolling Dice
    37. Exercise 7.4.7 Categories
    38. 7.5 Looping Quiz

    39. Unit Quiz 7.5.1 Looping Unit Test
  8. Project: Password Authenticator

    1. 8.1 Project: Password Authenticator

    2. Exercise 8.1.1 Project: Password Authenticator
  9. Functions and Exceptions

    1. 9.1 Functions

    2. Video 9.1.1 Functions
    3. Check for Understanding 9.1.2 Functions
    4. Example 9.1.3 Greeting
    5. Example 9.1.4 Extended Greeting
    6. Exercise 9.1.5 Weather
    7. 9.2 Functions and Parameters

    8. Video 9.2.1 Functions and Parameters
    9. Check for Understanding 9.2.2 Functions and Parameters
    10. Example 9.2.3 Print a Value
    11. Example 9.2.4 Name and Age
    12. Exercise 9.2.5 Print Product
    13. Exercise 9.2.6 Print Multiple Times
    14. Example 9.2.7 Default Parameter Values
    15. Exercise 9.2.8 Area of a Square with Default Parameters
    16. 9.3 Namespaces in Functions

    17. Video 9.3.1 Namespaces in Functions
    18. Check for Understanding 9.3.2 Namespaces in Functions
    19. Example 9.3.3 Functions and Variables
    20. Example 9.3.4 Functions and Variables, Part 2
    21. Debugging 9.3.5 Fix This Program!
    22. Exercise 9.3.6 Adding to a Value
    23. Exercise 9.3.7 Add, Subtract, or Multiply
    24. 9.4 Functions and Return Values

    25. Video 9.4.1 Functions and Return Values
    26. Check for Understanding 9.4.2 Functions and Return Values
    27. Example 9.4.3 Return 10
    28. Exercise 9.4.4 Add One
    29. Example 9.4.5 Negate
    30. Example 9.4.6 Functions Calling Functions
    31. Example 9.4.7 Function Calls As Parameters
    32. Exercise 9.4.8 Sum Two Numbers
    33. Exercise 9.4.9 Temperature Converter
    34. Badge 9.4.10 Functions Badge
    35. 9.5 Exceptions

    36. Video 9.5.1 Exceptions
    37. Check for Understanding 9.5.2 Exceptions
    38. Example 9.5.3 Enter a Number
    39. Example 9.5.4 Enter Name and Age
    40. Exercise 9.5.5 Temperature Converter, Part 2
    41. Exercise 9.5.6 Enter a Positive Number
    42. 9.6 Functions & Exceptions Quiz

    43. Unit Quiz 9.6.1 Functions and Exceptions Quiz
    44. Badge 9.6.2 Control Flow Badge
  10. Strings

    1. 10.1 Indexing

    2. Video 10.1.1 Indexing
    3. Check for Understanding 10.1.2 Indexing
    4. Example 10.1.3 Characters in a String
    5. Video 10.1.4 Unit Tests
    6. Practice 10.1.5 Initials
    7. Practice 10.1.6 Sandwich Sandwiches
    8. 10.2 Slicing

    9. Video 10.2.1 Slicing
    10. Check for Understanding 10.2.2 Slicing
    11. Example 10.2.3 Groups of Characters
    12. Example 10.2.4 String Collage
    13. Example 10.2.5 Room Names
    14. Practice 10.2.6 If You're Not First, You're Last
    15. Practice 10.2.7 Part 1, Replace a Letter
    16. Practice 10.2.8 Part 2, Replace a Letter
    17. Badge 10.2.9 Slicing Badge
    18. 10.3 Immutability

    19. Video 10.3.1 Immutability
    20. Check for Understanding 10.3.2 Immutability
    21. Example 10.3.3 String Immutability
    22. Exercise 10.3.4 Find the Error
    23. 10.4 Strings and For Loops

    24. Video 10.4.1 Strings and For Loops
    25. Check for Understanding 10.4.2 Strings and For Loops
    26. Example 10.4.3 The len Function
    27. Practice 10.4.4 Length of User's Name
    28. Example 10.4.5 String For Loop with Indices
    29. Example 10.4.6 String For Loop with Characters
    30. Exercise 10.4.7 Spelling Bee
    31. Practice 10.4.8 Keeping Count
    32. 10.5 The in Keyword

    33. Video 10.5.1 The in Keyword
    34. Check for Understanding 10.5.2 The in Keyword
    35. Example 10.5.3 Contains a Letter
    36. Example 10.5.4 Contains a Substring
    37. Practice 10.5.5 Contains a Vowel
    38. 10.6 String Methods

    39. Video 10.6.1 String Methods
    40. Check for Understanding 10.6.2 String Methods
    41. Example 10.6.3 upper and lower
    42. Practice 10.6.4 ENTHUSIASM!
    43. Example 10.6.5 swapcase
    44. Example 10.6.6 strip
    45. Example 10.6.7 find
    46. Practice 10.6.8 What's in a Name?
    47. Practice 10.6.9 Part 1, Remove All From String
    48. Exercise 10.6.10 Part 2, Remove All From String
    49. Survey 10.6.11 Mindset Survey 3
    50. 10.7 Strings Quiz

    51. Unit Quiz 10.7.1 Strings Quiz
    52. Badge 10.7.2 Strings Badge
  11. Project: The Game of Pig

    1. 11.1 Project: The Game of Pig

    2. Free Response 11.1.1 The Game of Pig
    3. Exercise 11.1.2 Build the Basic Program
    4. Exercise 11.1.3 Adding a Computer Opponent
  12. Creating and Altering Data Structures

    1. 12.1 Tuples

    2. Video 12.1.1 Tuples
    3. Check for Understanding 12.1.2 Tuples
    4. Example 12.1.3 A Tuple Is a Sequence
    5. Example 12.1.4 A Tuple is Heterogenous
    6. Example 12.1.5 Tuples With a Single Element
    7. Example 12.1.6 Concatenating Tuples
    8. Exercise 12.1.7 Fix This Tuple
    9. Practice 12.1.8 Citation
    10. Practice 12.1.9 Diving Contest
    11. Practice 12.1.10 Coordinate Pairs
    12. 12.2 Lists

    13. Video 12.2.1 Lists
    14. Check for Understanding 12.2.2 Lists
    15. Example 12.2.3 A List Is Like a Mutable Tuple
    16. Example 12.2.4 String <--> List
    17. Practice 12.2.5 Spell It Out
    18. Example 12.2.6 Splitting a String
    19. Practice 12.2.7 Listed Greeting
    20. Example 12.2.8 List of Tuples, Tuples of Lists
    21. 12.3 For Loops and Lists

    22. Video 12.3.1 For Loops and Lists
    23. Check for Understanding 12.3.2 For Loops and Lists
    24. Example 12.3.3 For Loops and Lists
    25. Example 12.3.4 For Loops and Lists, Part 2
    26. Practice 12.3.5 Max In List
    27. Practice 12.3.6 Owls
    28. Practice 12.3.7 Exclamat!on Po!nts
    29. Challenge 12.3.8 Word Ladder
    30. Challenge 12.3.9 Owls, Part 2
    31. 12.4 List Methods

    32. Video 12.4.1 List Methods
    33. Check for Understanding 12.4.2 List Methods
    34. Example 12.4.3 append and extend
    35. Exercise 12.4.4 How Many Names?
    36. Exercise 12.4.5 Five Numbers
    37. Example 12.4.6 sort
    38. Exercise 12.4.7 Librarian
    39. Example 12.4.8 reverse
    40. Example 12.4.9 count
    41. Example 12.4.10 remove
    42. Practice 12.4.11 Take a Thing Out, Sort It and Reverse It
    43. Challenge 12.4.12 Librarian, Part 2
    44. Badge 12.4.13 Lists Badge
    45. 12.5 Creating and Altering Data Structures Quiz

    46. Unit Quiz 12.5.1 Creating and Altering Data Structures Quiz
  13. Extending Data Structures

    1. 13.1 2d Lists

    2. Video 13.1.1 2d Lists
    3. Check for Understanding 13.1.2 2d Lists
    4. Example 13.1.3 A List of Lists
    5. Example 13.1.4 Grid
    6. Example 13.1.5 2d Lists and Slices
    7. Exercise 13.1.6 Checkerboard, v1
    8. Exercise 13.1.7 Checkerboard, v2
    9. Exercise 13.1.8 Checkerboard, v3
    10. Challenge 13.1.9 Tic Tac Toe
    11. 13.2 List Comprehensions

    12. Video 13.2.1 List Comprehensions
    13. Check for Understanding 13.2.2 List Comprehensions
    14. Example 13.2.3 List of Consecutive Numbers
    15. Example 13.2.4 List of Squares
    16. Exercise 13.2.5 Divisible by 3
    17. Example 13.2.6 Digits of Pi
    18. Example 13.2.7 List of Booleans
    19. Exercise 13.2.8 Last Names
    20. Exercise 13.2.9 Strings To Integers
    21. Survey 13.2.10 Mindset Survey 4
    22. 13.3 Packing and Unpacking

    23. Video 13.3.1 Packing and Unpacking
    24. Check for Understanding 13.3.2 Packing and Unpacking
    25. Example 13.3.3 Packing
    26. Example 13.3.4 Unpacking
    27. Example 13.3.5 Unpacking Parameters
    28. Exercise 13.3.6 Coordinate Pair
    29. Exercise 13.3.7 Slopes
    30. Example 13.3.8 Swapping
    31. Exercise 13.3.9 Full Name & Citation
    32. Badge 13.3.10 Packing Badge
    33. 13.4 Dictionaries

    34. Video 13.4.1 Dictionaries
    35. Check for Understanding 13.4.2 Dictionaries
    36. Example 13.4.3 Keys and Values
    37. Example 13.4.4 The in Keyword
    38. Exercise 13.4.5 Phone Book
    39. Exercise 13.4.6 Word Counts
    40. 13.5 Extending Data Structures Quiz

    41. Unit Quiz 13.5.1 Extending Data Structures Quiz
    42. Badge 13.5.2 Data Structures Badge
  14. Project: Guess the Word

    1. 14.1 Project: Guess the Word

    2. Demo 14.1.1 Guess the Word Demo
    3. Exercise 14.1.2 Guess the Word, Part 1
    4. Exercise 14.1.3 Guess the Word, Part 2
    5. Exercise 14.1.4 Guess the Word, Part 3
    6. Exercise 14.1.5 Guess the Word, Part 4
  15. File I/O

    1. 15.1 What is File I/O

    2. Video 15.1.1 What is File I/O
    3. Quiz 15.1.2 What is File I/O
    4. Example 15.1.3 What is a TXT File?
    5. Example 15.1.4 What is a CSV File?
    6. Free Response 15.1.5 Choosing a File Format: TXT vs. CSV
    7. Example 15.1.6 File I/O in Data Science
    8. Example 15.1.7 File I/O in Image Processing
    9. Free Response 15.1.8 File I/O and Social Media
    10. 15.2 Reading Character from File

    11. Video 15.2.1 Reading Character from File
    12. Video 15.2.2 Reading Characters from File: Example Walkthrough
    13. Quiz 15.2.3 Reading Characters from File
    14. Example 15.2.4 Read Specific Characters
    15. Example 15.2.5 Read All Characters
    16. Debugging 15.2.6 Fix This: Reading Characters
    17. Debugging 15.2.7 Fix This: Unable to Read
    18. Exercise 15.2.8 Validating Tweet Length
    19. 15.3 Reading Line from File

    20. Video 15.3.1 Reading Line From File
    21. Video 15.3.2 Reading Line from File: Example Walkthrough
    22. Quiz 15.3.3 Read Line from File
    23. Example 15.3.4 Reading and Printing Lines
    24. Exercise 15.3.5 Counting Lines in a File
    25. Exercise 15.3.6 Summing Numbers from File
    26. Exercise 15.3.7 Formatting Movie Titles
    27. 15.4 Reading All Lines from File

    28. Video 15.4.1 Reading All Lines from File
    29. Video 15.4.2 Reading All Lines from File: Example Walkthrough
    30. Quiz 15.4.3 Reading All Lines from File
    31. Example 15.4.4 Using readlines()
    32. Exercise 15.4.5 Finding the Needle in the Haystack
    33. Exercise 15.4.6 Extract Quotes from a Text File
    34. 15.5 Writing to File

    35. Video 15.5.1 Writing to File
    36. Video 15.5.2 Write to End of File: Example Walkthrough
    37. Quiz 15.5.3 Writing to File
    38. Example 15.5.4 Write to File
    39. Example 15.5.5 Append to File
    40. Exercise 15.5.6 Activity Tracker
    41. Exercise 15.5.7 Guest Book
    42. Exercise 15.5.8 Write the Sum
    43. 15.6 Move File Pointer Position

    44. Video 15.6.1 Move File Pointer Position
    45. Video 15.6.2 Move File Pointer Position: Example Walkthrough
    46. Quiz 15.6.3 Move File Pointer Position
    47. Example 15.6.4 Using tell()
    48. Example 15.6.5 Reading from a Position in File
    49. Exercise 15.6.6 Read from Middle
    50. Exercise 15.6.7 Reverse a File
    51. 15.7 File I/O Quiz

    52. Quiz 15.7.1 File I/O Quiz
  16. Roles in a Software Development Team

    1. 16.1 Software Engineer

    2. Video 16.1.1 A Day as a Software Developer
    3. Video 16.1.2 Development Life Cycle
    4. Check for Understanding 16.1.3 Development Life Cycle
    5. Video 16.1.4 A Day in the Life of a Software Engineer at Meta
    6. Connection 16.1.5 Scrum Framework
    7. Free Response 16.1.6 SCRUM Response
    8. Connection 16.1.7 Using Flowcharts
    9. Notes 16.1.8 Project: Software Development
    10. Resource 16.1.9 Creating a Plan
    11. 16.2 QA Engineer

    12. Video 16.2.1 A Day as a QA Engineer
    13. Video 16.2.2 Define Acceptance Criteria
    14. Video 16.2.3 Outline Test Cases
    15. Video 16.2.4 Report Bugs
    16. Video 16.2.5 Part 1: Bug Hunt
    17. Free Response 16.2.6 Part 2: Report the Bug
    18. 16.3 Designer

    19. Video 16.3.1 A Day as a Designer
    20. Video 16.3.2 Create Wireframes
    21. Video 16.3.3 Research Typography
    22. Video 16.3.4 Choose Colors
    23. Connection 16.3.5 Create a Color Palette
    24. Video 16.3.6 Check Accessibility
    25. Presentation 16.3.7 Design a Mood Board
    26. 16.4 Project Manager

    27. Video 16.4.1 A Day as a Project Manager
    28. Video 16.4.2 Plan Project
    29. Video 16.4.3 Organize Tasks
    30. Video 16.4.4 Set Deadlines
    31. None 16.4.5 Create a Task Board
  17. Midterm

    1. 17.1 Midterm

    2. Final 17.1.1 Intro to Python Midterm Pt. 1- Multiple Choice
  18. Final Exam

    1. 18.1 Final Exam

    2. Midterm 18.1.1 Final Exam Pt 1: Multiple Choice
  19. Python Graphics (Brython)

    1. 19.1 Creating Text & Lines

    2. Video 19.1.1 Creating Text & Lines
    3. Quiz 19.1.2 Creating Text & Lines
    4. Example 19.1.3 Hello World
    5. Example 19.1.4 "Tracy"
    6. Exercise 19.1.5 Tic Tac Toe Board
    7. Exercise 19.1.6 Underlined Name
    8. Challenge 19.1.7 Bubble Letter
    9. 19.2 Creating Shapes

    10. Video 19.2.1 Creating Shapes
    11. Quiz 19.2.2 Shapes and Attributes
    12. Example 19.2.3 Flag of Switzerland
    13. Exercise 19.2.4 Flag of Ukraine
    14. Exercise 19.2.5 Flag of [your choice!]
    15. 19.3 Creating Graphics Using Variables

    16. Video 19.3.1 Creating Graphics Using Variables
    17. Quiz 19.3.2 Creating Graphics Using Variables
    18. Example 19.3.3 Flag of Switzerland Using Variables
    19. Exercise 19.3.4 Flag of Ukraine Using Variables
    20. Exercise 19.3.5 Snowman
    21. Challenge 19.3.6 Ghost
    22. 19.4 Using Functions in Graphics

    23. Video 19.4.1 Using Functions in Graphics
    24. Quiz 19.4.2 Using Functions in Graphics
    25. Example 19.4.3 Forest
    26. Exercise 19.4.4 Vertical Lines
    27. Exercise 19.4.5 Stoplight
    28. Challenge 19.4.6 Ghost Invasion
    29. 19.5 Using Loops in Graphics

    30. Video 19.5.1 Using Loops in Graphics
    31. Quiz 19.5.2 Using Loops in Graphics
    32. Example 19.5.3 Diagonal Checkerboard
    33. Exercise 19.5.4 The Worm
    34. Exercise 19.5.5 Dartboard
    35. Challenge 19.5.6 Sidewalk
    36. 19.6 Graphics Challenges

    37. Challenge 19.6.1 Pyramid
    38. Challenge 19.6.2 Extended Forest
  20. Python Graphics (Tkinter)

    1. 20.1 Creating the Canvas

    2. Video 20.1.1 Creating the Canvas
    3. Check for Understanding 20.1.2 Creating the Canvas
    4. Example 20.1.3 Create the Canvas
    5. Example 20.1.4 X Marks the Spot
    6. Exercise 20.1.5 Tic Tac Toe Board
    7. Exercise 20.1.6 Bubble Letter
    8. 20.2 Shapes and Attributes

    9. Video 20.2.1 Shapes and Attributes
    10. Check for Understanding 20.2.2 Shapes and Attributes
    11. Example 20.2.3 Flag of Japan
    12. Exercise 20.2.4 Flag of Poland
    13. Exercise 20.2.5 Flag of [your choice!]
    14. 20.3 Creating Graphics Using Variables

    15. Video 20.3.1 Creating Graphics Using Variables
    16. Check for Understanding 20.3.2 Creating Graphics Using Variables
    17. Example 20.3.3 Flag of Japan Using Variables
    18. Example 20.3.4 Creating Shapes
    19. Exercise 20.3.5 Snowman
    20. Challenge 20.3.6 Ghost
    21. 20.4 Using Functions in Graphics

    22. Video 20.4.1 Using Functions in Graphics
    23. Check for Understanding 20.4.2 Using Functions in Graphics
    24. Example 20.4.3 Balloons
    25. Exercise 20.4.4 Vertical Lines
    26. Exercise 20.4.5 Stoplight
    27. Challenge 20.4.6 Ghost Invasion
    28. 20.5 Using Loops in Graphics

    29. Video 20.5.1 Using Loops in Graphics
    30. Check for Understanding 20.5.2 Using Loops in Graphics
    31. Example 20.5.3 Phone Signal
    32. Exercise 20.5.4 The Worm
    33. Exercise 20.5.5 Growing Circles
    34. Challenge 20.5.6 Sidewalk
    35. 20.6 Graphics Challenges

    36. Challenge 20.6.1 Block Tower
  21. Project: Who Said It?

    1. 21.1 Project: Who Said It?

    2. Video 21.1.1 File I/O
    3. Check for Understanding 21.1.2 File I/O
    4. Demo 21.1.3 Who Said It? Demo
    5. Exercise 21.1.4 Who Said It? - Part 1
    6. Exercise 21.1.5 Who Said It? - Part 2
    7. Exercise 21.1.6 Who Said It? - Part 3
    8. Exercise 21.1.7 Who Said It? - Part 4
    9. Badge 21.1.8 Who Said It? Badge
  22. Project: Mastermind

    1. 22.1 Let's Build Mastermind

    2. Connection 22.1.1 How to Play Mastermind
    3. Demo 22.1.2 Mastermind: Demo
    4. Exercise 22.1.3 Generate Number List
    5. Exercise 22.1.4 Get User Guess
    6. Exercise 22.1.5 Compare User Guess to List
    7. Exercise 22.1.6 Check if User has Won
    8. Exercise 22.1.7 Finish the Game!
  23. Classes and Objects

    1. 23.1 Classes and Objects

    2. Video 23.1.1 Classes and Objects
    3. Check for Understanding 23.1.2 Classes and Objects
    4. Example 23.1.3 The Point Class
    5. Exercise 23.1.4 The Rectangle Class, Part 1
    6. Example 23.1.5 The Point Class, Part 2
    7. Exercise 23.1.6 The Rectangle Class, Part 2
    8. 23.2 Methods

    9. Video 23.2.1 Methods
    10. Check for Understanding 23.2.2 Methods
    11. Example 23.2.3 The Point Class, Part 3
    12. Example 23.2.4 The Point Class, Part 4
    13. Exercise 23.2.5 The Rectangle Class, Part 3
    14. Exercise 23.2.6 The Rectangle Class, Part 4
    15. 23.3 Built-In Methods

    16. Video 23.3.1 Built-In Methods
    17. Check for Understanding 23.3.2 Built-In Methods
    18. Example 23.3.3 The __repr__ method
    19. Example 23.3.4 The __eq__ method
    20. Example 23.3.5 The Point Class, Part 5
    21. Exercise 23.3.6 The Rectangle Class, Part 5
    22. Exercise 23.3.7 The Rectangle Class, Part 6
    23. Example 23.3.8 Sheet Music
    24. Challenge 23.3.9 Names In a Hat
    25. 23.4 Operator Overloading

    26. Video 23.4.1 Operator Overloading
    27. Check for Understanding 23.4.2 Operator Overloading
    28. Example 23.4.3 The __add__ method
    29. Example 23.4.4 The Point Class, Part 6
    30. Exercise 23.4.5 The Rectangle Class, Part 7
    31. Exercise 23.4.6 The Rectangle Class, Part 8
    32. Exercise 23.4.7 Contact Merge
    33. 23.5 Class Variables vs. Instance Variables

    34. Video 23.5.1 Class Variables vs. Instance Variables
    35. Check for Understanding 23.5.2 Class Variables vs. Instance Variables
    36. Example 23.5.3 The Point Class, Part 7
    37. Exercise 23.5.4 The Rectangle Class, Part 9
    38. Example 23.5.5 Cars
    39. Exercise 23.5.6 Cars, Part 2
    40. Example 23.5.7 Cars, Part 3
    41. 23.6 Inheritance

    42. Video 23.6.1 Inheritance
    43. Check for Understanding 23.6.2 Inheritance
    44. Example 23.6.3 Animals
    45. Exercise 23.6.4 Food, Part 1
    46. Example 23.6.5 Animals with Lists
    47. Exercise 23.6.6 Food , Part 2
    48. 23.7 Hidden Attributes

    49. Video 23.7.1 Hidden Attributes
    50. Check for Understanding 23.7.2 Hidden Attributes
    51. Example 23.7.3 Secret Instance Variable
    52. Exercise 23.7.4 Only Even Rectangles Counted
    53. Example 23.7.5 Level Up
    54. Exercise 23.7.6 Triple and Halve
    55. 23.8 Namespaces

    56. Video 23.8.1 Namespaces
    57. Check for Understanding 23.8.2 Namespaces
    58. Example 23.8.3 Classes
    59. Example 23.8.4 Subclasses
    60. Exercise 23.8.5 Food, Part 3
    61. 23.9 Modules

    62. Video 23.9.1 Modules
    63. Check for Understanding 23.9.2 Modules
    64. Example 23.9.3 Importing Entire Module
    65. Example 23.9.4 Importing Individual Components
    66. Free Response 23.9.5 Benefits of Individual Importing
    67. Exercise 23.9.6 Using the Math Module
    68. 23.10 Classes and Objects Quiz

    69. Unit Quiz 23.10.1 Classes and Objects Unit Test
    70. Badge 23.10.2 Classes and Objects Badge
  24. Additional Topics

    1. 24.1 Short Circuit Evaluation

    2. Video 24.1.1 Short Circuit Evaluation
    3. Check for Understanding 24.1.2 Short Circuit Evaluation
    4. Example 24.1.3 Road Trip
    5. Exercise 24.1.4 Divisibility
    6. Badge 24.1.5 Short Circuit Badge
    7. 24.2 De Morgan's Laws

    8. Video 24.2.1 De Morgan's Laws
    9. Check for Understanding 24.2.2 De Morgan's Laws
    10. Example 24.2.3 De Morgan's Law for AND
    11. Example 24.2.4 De Morgan's Law for OR
    12. Exercise 24.2.5 Amusement Park
    13. 24.3 Abstraction

    14. Video 24.3.1 Abstraction
    15. Check for Understanding 24.3.2 Abstraction
    16. Example 24.3.3 Abstracting Away draw_square()
    17. Free Response 24.3.4 Abstracting Your Day
    18. Free Response 24.3.5 Reflection: Abstraction
    19. Free Response 24.3.6 Abstraction in Tracy
    20. 24.4 Adding Text

    21. Video 24.4.1 Adding Text
    22. Quiz 24.4.2 Adding Text
    23. Example 24.4.3 Concentric Circles with Labels
    24. Exercise 24.4.4 Name your Colorful Caterpillar!
    25. Exercise 24.4.5 Baseball Diagram