### Please enable JavaScript to use CodeHS

Intro to Computer Science in Python 2 (Rainforest)

1. ## Welcome

1. ### 1.1 Welcome

2. Video 1.1.1 Welcome
3. Free Response 1.1.2 Welcome
4. Video 1.1.3 Course Content Overview
2. ## Introduction to Programming with Turtle Graphics

1. ### 2.1 Intro to Python with Tracy the Turtle

2. Video 2.1.1 Intro to Tracy
3. Check for Understanding 2.1.2 Intro to Tracy
4. Example 2.1.3 Slinky
5. Exercise 2.1.4 Stretched Slinky
6. ### 2.2 Tracy's Grid World

7. Video 2.2.1 Tracy's Grid World
8. Check for Understanding 2.2.2 Tracy's Grid World
9. Example 2.2.3 Dashed Line
10. Exercise 2.2.4 Shorter Dashed Line
11. Exercise 2.2.5 Caterpillar
13. ### 2.3 Turning Tracy

14. Video 2.3.1 Turning Tracy
15. Check for Understanding 2.3.2 Turning Tracy
16. Example 2.3.3 Square
17. Example 2.3.4 X and Y Axes
18. Exercise 2.3.5 Rectangle
19. Exercise 2.3.6 4 Columns
20. ### 2.4 For Loops

21. Video 2.4.1 For Loops
22. Check for Understanding 2.4.2 For Loops
23. Example 2.4.3 Square Using Loops
24. Example 2.4.4 Dotted Line
25. Exercise 2.4.5 Row of Circles
26. Exercise 2.4.6 4 Columns 2.0
28. ### 2.5 Turning Tracy Using Angles

29. Video 2.5.1 Turning Tracy Using Angles
30. Check for Understanding 2.5.2 Turning Tracy Using Angles
31. Example 2.5.3 Asterisk
32. Example 2.5.4 Four Circles
33. Exercise 2.5.5 Hexagon
34. Exercise 2.5.6 'X' Marks the Spot
35. Exercise 2.5.7 Circle Pyramid
36. ### 2.6 Comments

37. Video 2.6.1 Comments
38. Check for Understanding 2.6.2 Comments
39. Example 2.6.3 Four Circles with Comments
40. Exercise 2.6.4 Circle Pyramid with Comments
41. ### 2.7 Naming Guidelines

42. Video 2.7.1 Naming Guidelines
43. Check for Understanding 2.7.2 Naming Guidelines
44. ### 2.8 Functions

45. Video 2.8.1 Functions
46. Check for Understanding 2.8.2 Functions
47. Example 2.8.3 X and Y Axes with Hash Marks
48. Exercise 2.8.4 Beaded Bracelet
49. Exercise 2.8.5 Shape Stack
51. ### 2.9 Artistic Effects

52. Video 2.9.1 Artistic Effects
53. Check for Understanding 2.9.2 Artistic Effects
54. Example 2.9.3 Rainbow Octagon
55. Example 2.9.4 Circle Square Triangle
56. Exercise 2.9.5 Four Colored Triangles
57. Exercise 2.9.6 Colorful Bracelet
58. Challenge 2.9.7 Kid's Shapes Toy
59. ### 2.10 Top Down Design

60. Video 2.10.1 Top Down Design
61. Check for Understanding 2.10.2 Top Down Design
62. Example 2.10.3 Bubble Wrap
63. Exercise 2.10.4 Bubble Wrap 2.0
64. Exercise 2.10.5 Sidewalk
65. ### 2.11 Variables

66. Video 2.11.1 Variables
67. Check for Understanding 2.11.2 Variables
68. Example 2.11.3 Increasing Length
69. Exercise 2.11.4 Dartboard
70. Exercise 2.11.5 Line of Increasing Blocks
71. ### 2.12 User Input

72. Video 2.12.1 User Input
73. Check for Understanding 2.12.2 User Input
74. Example 2.12.3 Color Coded Increasing Length
75. Exercise 2.12.4 Colored Dartboard
76. Exercise 2.12.5 Four Corners
78. ### 2.13 Parameters

79. Video 2.13.1 Parameters
80. Check for Understanding 2.13.2 Parameters
81. Example 2.13.3 Concentric Circles
82. Exercise 2.13.4 Colorful Caterpillar
83. Exercise 2.13.5 Circle in a Square
84. Exercise 2.13.6 Snowman
85. ### 2.14 Using i in For Loops

86. Video 2.14.1 Using i in For Loops
87. Check for Understanding 2.14.2 Using i in For Loops
88. Example 2.14.3 Geometry
89. Exercise 2.14.4 Geometry 2.0
90. ### 2.15 Extended Loop Control

91. Video 2.15.1 Extended Loop Control
92. Check for Understanding 2.15.2 Extended Loop Control
93. Example 2.15.3 Square Swirl
94. Exercise 2.15.4 Dartboard using i
95. Exercise 2.15.5 Phone Signal
96. Badge 2.15.6 Master of i Badge
97. ### 2.16 If Statements

98. Video 2.16.1 If Statements
99. Check for Understanding 2.16.2 If Statements
100. Example 2.16.3 X and Y Axis with Bolded Marks
101. Exercise 2.16.4 Happy Face
102. Exercise 2.16.5 Black and White Squares
103. ### 2.17 If/ Else Statements

104. Video 2.17.1 If/Else Statements
105. Check for Understanding 2.17.2 If/Else Statements
106. Example 2.17.3 Positive, Negative, Zero
107. Exercise 2.17.4 Rating
108. Exercise 2.17.5 Happy/ Sad Face
109. ### 2.18 While Loops

110. Video 2.18.1 While Loops
111. Check for Understanding 2.18.2 While Loops
112. Example 2.18.3 Increasing Circles
113. Exercise 2.18.4 Increasing Squares
114. Exercise 2.18.5 Guess a Number
116. Survey 2.18.7 Mindset Survey 1
117. ### 2.19 Putting Together Control Structures

118. Video 2.19.1 Putting Together Control Structures
119. Check for Understanding 2.19.2 Putting Together Control Structures
120. Example 2.19.3 Block Pyramid
121. Exercise 2.19.4 Guess a Number 2.0
122. Exercise 2.19.5 Circle Pyramid 2.0
123. Challenge 2.19.6 Checkerboard
124. Badge 2.19.7 Tracy the Turtle Badge
125. ### 2.20 Intro to Programming with Turtle Graphics Quiz

126. Quiz 2.20.1 Intro to Programming with Turtle Graphics Quiz
127. Badge 2.20.2 Intro to Programming with Turtle Graphics Badge
3. ## Basic Python and Console Interaction

1. ### 3.1 Printing in Python

2. Video 3.1.1 Printing in Python
3. Quiz 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. Quiz 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
18. ### 3.3 User Input

19. Video 3.3.1 User Input
20. Quiz 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. Quiz 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 Operators and Floats
33. Exercise 3.4.7 Rectangle
34. ### 3.5 String Operators

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

45. Video 3.6.1 Comments
46. Quiz 3.6.2 Comments
47. Example 3.6.3 Commented Program
48. Example 3.6.4 Trapezoid
50. ### 3.7 Basic Python and Console Interaction Quiz

51. Quiz 3.7.1 Basic Python and Console Interaction Quiz
52. Badge 3.7.2 Basic Python and Console Interaction Badge
4. ## Conditionals

1. ### 4.1 Booleans

2. Video 4.1.1 Booleans
3. Quiz 4.1.2 Booleans
4. Example 4.1.3 Boolean Variables
5. Debugging 4.1.4 Fix This Program
6. Exercise 4.1.5 Plants
7. ### 4.2 If Statements

8. Video 4.2.1 If Statements
9. Quiz 4.2.2 If Statements
10. Example 4.2.3 Your First If Statement
11. Example 4.2.4 If-Else Statement
12. Debugging 4.2.5 Fix This Program
13. Exercise 4.2.6 Is It Raining?
15. ### 4.3 Comparison Operators

16. Video 4.3.1 Comparison Operators
17. Quiz 4.3.2 Comparison Operators
18. Example 4.3.3 Comparison Operators
19. Example 4.3.4 High Jump
20. Example 4.3.5 Roller Coaster
21. Exercise 4.3.6 Old Enough to Vote?
22. Exercise 4.3.7 Positive, Zero, or Negative?
23. Example 4.3.8 Age Group
24. Exercise 4.3.9 Table Reservation
25. Challenge 4.3.10 Transaction
26. ### 4.4 Logical Operators

27. Video 4.4.1 Logical Operators
28. Quiz 4.4.2 Logical Operators
29. Example 4.4.3 Logical Operators
30. Exercise 4.4.4 Administrators, Teachers, and Students
31. Exercise 4.4.5 Presidential Eligibility
32. Challenge 4.4.6 Presidential Eligibility- Extended
33. ### 4.5 Floating Point Numbers and Rounding

34. Video 4.5.1 Floating Point Numbers and Rounding
35. Quiz 4.5.2 Floating Point Numbers and Rounding
36. Example 4.5.3 Rounding Error
37. Exercise 4.5.4 Correct Portion
38. ### 4.6 Conditionals Quiz

39. Quiz 4.6.1 Conditionals Quiz
5. ## Looping

1. ### 5.1 While Loops

2. Video 5.1.1 While Loops
3. Quiz 5.1.2 While Loops
4. Example 5.1.3 Guess My Number
5. Example 5.1.4 Program Tracing
6. Example 5.1.5 Program Tracing, Part 2
7. Exercise 5.1.6 2 Through 20 Even
8. Exercise 5.1.7 Divisibility
9. ### 5.2 For Loops

10. Video 5.2.1 For Loops
11. Quiz 5.2.2 For Loops
12. Example 5.2.3 Print 10 Numbers
13. Example 5.2.4 1 Through 10, Part 2
14. Exercise 5.2.5 Counting 10 to 100 by Tens
15. Example 5.2.6 Running Total
16. Example 5.2.7 Running Total, Part 2
17. Exercise 5.2.8 Average Test Score
18. Exercise 5.2.9 How Many Names?
20. Survey 5.2.11 Mindset Survey 2
21. ### 5.3 Break and Continue

22. Video 5.3.1 Break and Continue
23. Quiz 5.3.2 Break and Continue
24. Example 5.3.3 Break
25. Example 5.3.4 Continue
26. Example 5.3.5 Bike Frame Size
27. Example 5.3.6 Loop and a Half
28. Exercise 5.3.7 Higher/ Lower
29. Challenge 5.3.8 Higher / Lower 2.0
30. ### 5.4 Nested Control Structures

31. Video 5.4.1 Nested Control Structures
32. Quiz 5.4.2 Nested Control Structures
33. Example 5.4.3 Double For Loop
34. Example 5.4.4 Average Test Score, Part 2
35. Example 5.4.5 For Loop + While Loop
36. Exercise 5.4.6 Rolling Dice
37. Exercise 5.4.7 Categories
38. ### 5.5 Looping Quiz

39. Quiz 5.5.1 Looping Quiz
6. ## Functions and Exceptions

1. ### 6.1 Functions

2. Video 6.1.1 Functions
3. Quiz 6.1.2 Functions
4. Example 6.1.3 Greeting
5. Example 6.1.4 Extended Greeting
6. Exercise 6.1.5 Weather
7. ### 6.2 Namespaces in Functions

8. Video 6.2.1 Namespaces in Functions
9. Quiz 6.2.2 Namespaces in Functions
10. Example 6.2.3 Functions and Variables
11. Example 6.2.4 Functions and Variables, Part 2
12. Debugging 6.2.5 Fix This Program!
13. Exercise 6.2.6 Adding to a Value
14. Exercise 6.2.7 Add, Subtract, or Multiply
15. ### 6.3 Functions and Parameters

16. Video 6.3.1 Functions and Parameters
17. Quiz 6.3.2 Functions and Parameters
18. Example 6.3.3 Print a Number
19. Example 6.3.4 Name and Age
20. Exercise 6.3.5 Print Product
21. Exercise 6.3.6 Print Multiple Times
22. Example 6.3.7 Default Parameter Values
23. Exercise 6.3.8 Area of a Square with Default Parameters
24. ### 6.4 Functions and Return Values

25. Video 6.4.1 Functions and Return Values
26. Quiz 6.4.2 Functions and Return Values
27. Example 6.4.3 Return 10
28. Exercise 6.4.4 Add One
29. Example 6.4.5 Negate
30. Example 6.4.6 Functions Calling Functions
31. Example 6.4.7 Function Calls As Parameters
32. Exercise 6.4.8 Sum Two Numbers
33. Exercise 6.4.9 Temperature Converter
35. ### 6.5 Exceptions

36. Video 6.5.1 Exceptions
37. Quiz 6.5.2 Exceptions
38. Example 6.5.3 Enter a Number
39. Example 6.5.4 Enter Name and Age
40. Exercise 6.5.5 Divisibility, Part 2
41. Exercise 6.5.6 Temperature Converter, Part 2
42. Exercise 6.5.7 Enter a Positive Number
43. ### 6.6 Functions and Exceptions Quiz

44. Quiz 6.6.1 Functions and Exceptions Quiz
7. ## Strings

1. ### 7.1 Indexing

2. Video 7.1.1 Indexing
3. Quiz 7.1.2 Indexing
4. Example 7.1.3 Characters in a String
5. Exercise 7.1.4 Initials
6. Exercise 7.1.5 Doghouse
7. ### 7.2 Slicing

8. Video 7.2.1 Slicing
9. Quiz 7.2.2 Slicing
10. Example 7.2.3 Groups of Characters
11. Example 7.2.4 String Collage
12. Example 7.2.5 Room Names
13. Exercise 7.2.6 First Character
14. Exercise 7.2.7 Part 1, Replace a Letter
15. Exercise 7.2.8 Part 2, Replace a Letter
17. ### 7.3 Immutability

18. Video 7.3.1 Immutability
19. Quiz 7.3.2 Immutability
20. Example 7.3.3 String Immutability
21. Exercise 7.3.4 Find the Error
22. ### 7.4 Strings and For Loops

23. Video 7.4.1 Strings and For Loops
24. Quiz 7.4.2 Strings and For Loops
25. Example 7.4.3 The len Function
26. Exercise 7.4.4 Length of User's Name
27. Example 7.4.5 String For Loop with Indices
28. Example 7.4.6 String For Loop with Characters
29. Exercise 7.4.7 Spelling Bee
30. Exercise 7.4.8 Count Occurrences
31. ### 7.5 The in Keyword

32. Video 7.5.1 The in Keyword
33. Quiz 7.5.2 The in Keyword
34. Example 7.5.3 Contains a Letter
35. Example 7.5.4 Contains a Substring
36. Exercise 7.5.5 Contains a Vowel
37. ### 7.6 String Methods

38. Video 7.6.1 String Methods
39. Quiz 7.6.2 String Methods
40. Example 7.6.3 upper and lower
41. Exercise 7.6.4 Enthusiasm
42. Example 7.6.5 swapcase
43. Example 7.6.6 strip
44. Example 7.6.7 find
45. Exercise 7.6.8 Vowels in First Name
46. Exercise 7.6.9 Part 1, Remove All From String
47. Exercise 7.6.10 Part 2, Remove All From String
48. Survey 7.6.11 Mindset Survey 3
49. ### 7.7 Strings Quiz

50. Quiz 7.7.1 Strings Quiz
8. ## Creating and Altering Data Structures

1. ### 8.1 Tuples

2. Video 8.1.1 Tuples
3. Quiz 8.1.2 Tuples
4. Example 8.1.3 A Tuple Is a Sequence
5. Example 8.1.4 A Tuple is Heterogenous
6. Example 8.1.5 Tuples With a Single Element
7. Example 8.1.6 Concatenating Tuples
8. Exercise 8.1.7 Fix This Tuple
9. Exercise 8.1.8 Citation
10. Exercise 8.1.9 Cookout Orders
11. Challenge 8.1.10 Coordinate Pairs
12. ### 8.2 Lists

13. Video 8.2.1 Lists
14. Quiz 8.2.2 Lists
15. Example 8.2.3 A List Is Like a Mutable Tuple
16. Example 8.2.4 String <--> List
17. Exercise 8.2.5 Letters in Name
18. Example 8.2.6 Splitting a String
19. Exercise 8.2.7 Listed Greeting
20. Example 8.2.8 List of Tuples, Tuples of Lists
21. ### 8.3 For Loops and Lists

22. Video 8.3.1 For Loops and Lists
23. Quiz 8.3.2 For Loops and Lists
24. Example 8.3.3 For Loops and Lists
25. Example 8.3.4 For Loops and Lists, Part 2
26. Exercise 8.3.5 Max In List
27. Exercise 8.3.6 Owls
28. Exercise 8.3.7 Exclamat!on Po!nts
29. Challenge 8.3.8 Word Ladder
30. ### 8.4 List Methods

31. Video 8.4.1 List Methods
32. Quiz 8.4.2 List Methods
33. Example 8.4.3 append and extend
34. Exercise 8.4.4 How Many Names?
35. Exercise 8.4.5 Five Numbers
36. Example 8.4.6 sort
37. Exercise 8.4.7 Librarian
38. Example 8.4.8 reverse
39. Example 8.4.9 count
40. Example 8.4.10 remove
41. Exercise 8.4.11 Fruits and Vegetables
42. Challenge 8.4.12 Librarian, Part 2
43. Challenge 8.4.13 Owls, Part 2
45. ### 8.5 Creating and Altering Data Structures Quiz

46. Quiz 8.5.1 Creating and Altering Data Structures Quiz
9. ## Extending Data Structures

1. ### 9.1 2d Lists

2. Video 9.1.1 2d Lists
3. Quiz 9.1.2 2d Lists
4. Example 9.1.3 A List of Lists
5. Example 9.1.4 Grid
6. Example 9.1.5 2d Lists and Slices
7. Exercise 9.1.6 Checkerboard, v1
8. Exercise 9.1.7 Checkerboard, v2
9. Exercise 9.1.8 Checkerboard, v3
10. Challenge 9.1.9 Tic Tac Toe
11. ### 9.2 List Comprehensions

12. Video 9.2.1 List Comprehensions
13. Quiz 9.2.2 List Comprehensions
14. Example 9.2.3 List of Consecutive Numbers
15. Example 9.2.4 List of Squares
16. Exercise 9.2.5 Divisible by 3
17. Example 9.2.6 Digits of Pi
18. Example 9.2.7 List of Booleans
19. Exercise 9.2.8 Last Names
20. Exercise 9.2.9 Strings To Integers
21. Survey 9.2.10 Mindset Survey 4
22. ### 9.3 Packing and Unpacking

23. Video 9.3.1 Packing and Unpacking
24. Quiz 9.3.2 Packing and Unpacking
25. Example 9.3.3 Packing
26. Example 9.3.4 Unpacking
27. Example 9.3.5 Unpacking Parameters
28. Exercise 9.3.6 Coordinate Pair
29. Exercise 9.3.7 Slopes
30. Example 9.3.8 Swapping
31. Exercise 9.3.9 Full Name & Citation
33. ### 9.4 Dictionaries

34. Video 9.4.1 Dictionaries
35. Quiz 9.4.2 Dictionaries
36. Example 9.4.3 Keys and Values
37. Example 9.4.4 The in Keyword
38. Exercise 9.4.5 Phone Book
39. Exercise 9.4.6 Word Counts
40. ### 9.5 Equivalence vs. Identity

41. Video 9.5.1 Equivalence vs. Identity
42. Quiz 9.5.2 Equivalence vs. Identity
43. Example 9.5.3 Equivalence vs. Identity - Mutables
44. Example 9.5.4 Equivalence vs. Identity - Immutables
45. Example 9.5.5 Identity and Parameters
46. Exercise 9.5.6 Swapping
47. Exercise 9.5.7 Word Counts, Part 2
48. ### 9.6 Extending Data Structures Quiz

49. Quiz 9.6.1 Extending Data Structures Quiz
10. ## Project: Guess the Word

1. ### 10.1 Project: Guess the Word

2. Demo 10.1.1 Guess the Word Demo
3. Exercise 10.1.2 Guess the Word, Part 1
4. Exercise 10.1.3 Guess the Word, Part 2
5. Exercise 10.1.4 Guess the Word, Part 3
6. Exercise 10.1.5 Guess the Word, Part 4
7. Badge 10.1.6 Guess the Word Badge
8. ### 10.2 Intro to Computer Science in Python Completed

9. Badge 10.2.1 Intro to Computer Science in Python Badge
11. ## Final Exam

1. ### 11.1 Final Exam

2. Quiz 11.1.1 Final Exam Pt 1: Multiple Choice
12. ## Classes and Objects

1. ### 12.1 Classes and Objects

2. Video 12.1.1 Classes and Objects
3. Quiz 12.1.2 Classes and Objects
4. Example 12.1.3 The Point Class
5. Exercise 12.1.4 The Rectangle Class
6. Example 12.1.5 The Point Class, Part 2
7. Exercise 12.1.6 The Rectangle Class, Part 2
8. ### 12.2 Methods

9. Video 12.2.1 Methods
10. Quiz 12.2.2 Methods
11. Example 12.2.3 The Point Class, Part 3
12. Example 12.2.4 The Point Class, Part 4
13. Exercise 12.2.5 The Rectangle Class, Part 3
14. Exercise 12.2.6 The Rectangle Class, Part 4
15. ### 12.3 Built-In Methods

16. Video 12.3.1 Built-In Methods
17. Quiz 12.3.2 Built-In Methods
18. Example 12.3.3 The __repr__ method
19. Example 12.3.4 The __eq__ method
20. Example 12.3.5 The Point Class, Part 5
21. Exercise 12.3.6 The Rectangle Class, Part 5
22. Exercise 12.3.7 The Rectangle Class, Part 6
23. Example 12.3.8 Sheet Music
24. Challenge 12.3.9 Names In a Hat

28. Example 12.4.3 The __add__ method
29. Example 12.4.4 The Point Class, Part 6
30. Exercise 12.4.5 The Rectangle Class, Part 7
31. Exercise 12.4.6 The Rectangle Class, Part 8
32. Exercise 12.4.7 Contact Merge
33. ### 12.5 Class Variables vs. Instance Variables

34. Video 12.5.1 Class Variables vs. Instance Variables
35. Quiz 12.5.2 Class Variables vs. Instance Variables
36. Example 12.5.3 The Point Class, Part 7
37. Exercise 12.5.4 The Rectangle Class, Part 9
38. Example 12.5.5 Cars
39. Exercise 12.5.6 Cars, Part 2
40. Example 12.5.7 Cars, Part 3
41. ### 12.6 Inheritance

42. Video 12.6.1 Inheritance
43. Quiz 12.6.2 Inheritance
44. Example 12.6.3 Animals
45. Exercise 12.6.4 Food
46. Example 12.6.5 Animals with Lists
47. Exercise 12.6.6 Food with Lists
48. ### 12.7 Hidden Attributes

49. Video 12.7.1 Hidden Attributes
50. Quiz 12.7.2 Hidden Attributes
51. Example 12.7.3 Secret Instance Variable
52. Exercise 12.7.4 Only Even Rectangles Counted
53. Example 12.7.5 Level Up
54. Exercise 12.7.6 Triple and Halve
55. ### 12.8 Namespaces

56. Video 12.8.1 Namespaces
57. Quiz 12.8.2 Namespaces
58. Example 12.8.3 Classes
59. Example 12.8.4 Subclasses
60. Exercise 12.8.5 Food, Part 2
61. ### 12.9 Modules

62. Video 12.9.1 Modules
63. Quiz 12.9.2 Modules
64. Example 12.9.3 Importing Entire Module
65. Example 12.9.4 Importing Individual Components
66. Free Response 12.9.5 Benefits of Individual Importing
67. Exercise 12.9.6 Using the Math Module
68. ### 12.10 Classes and Objects Quiz

69. Quiz 12.10.1 Classes and Objects Quiz
70. Badge 12.10.2 Classes and Objects Badge
13. ## Advanced Tracy Challenges

1. ### 13.1 Advanced Challenges with Tracy

2. Challenge 13.1.1 Half Pyramid
3. Challenge 13.1.2 Pizza
4. Challenge 13.1.3 Grid
5. Challenge 13.1.4 Block Pyramid 2.0
14. ## Midterm

1. ### 14.1 Midterm

2. Quiz 14.1.1 Intro to Python Midterm Pt. 1- Multiple Choice
15. ## Additional Topics

1. ### 15.1 Abstraction

2. Video 15.1.1 Abstraction
3. Check for Understanding 15.1.2 Abstraction
4. Example 15.1.3 Abstracting Away draw_square()
5. Free Response 15.1.4 Abstracting Your Day
6. Free Response 15.1.5 Reflection: Abstraction
7. Free Response 15.1.6 Abstraction in Tracy
8. ### 15.2 Short Circuit Evaluation

9. Video 15.2.1 Short Circuit Evaluation
10. Quiz 15.2.2 Short Circuit Evaluation
11. Example 15.2.3 Road Trip
12. Exercise 15.2.4 Divisibility
14. ### 15.3 De Morgan's Laws

15. Video 15.3.1 De Morgan's Laws
16. Quiz 15.3.2 De Morgan's Laws
17. Example 15.3.3 De Morgan's Law for AND
18. Example 15.3.4 De Morgan's Law for OR
19. Exercise 15.3.5 Amusement Park
16. ## Project: Mastermind

1. ### 16.1 Let's Build Mastermind

2. Connection 16.1.1 How to Play Mastermind
3. Demo 16.1.2 Mastermind: Demo
4. Exercise 16.1.3 Generate Number List
5. Exercise 16.1.4 Get User Guess
6. Exercise 16.1.5 Compare User Guess to List
7. Exercise 16.1.6 Check if User has Won
8. Exercise 16.1.7 Finish the Game!
17. ## Categorizing Triangles

1. ### 17.1 Calculating Area

2. Video 17.1.1 Calculating Area
3. Check for Understanding 17.1.2 Calculating Area
4. Example 17.1.3 Drawing a Custom Triangle
5. Exercise 17.1.4 Calculate the Area
6. ### 17.2 Categorizing Triangles with a Static Base Value

7. Video 17.2.1 Categorizing Triangles with a Static Base Value
8. Check for Understanding 17.2.2 Categorizing Triangles with a Static Base Value
9. Example 17.2.3 Categorizing Obtuse Triangles
10. Exercise 17.2.4 Putting Triangles into Categories
11. ### 17.3 Categorizing Triangles with a Varied Base Value

12. Video 17.3.1 Categorizing Triangles with a Varied Base Value
13. Check for Understanding 17.3.2 Categorizing Triangles with a Varied Base Value
14. Example 17.3.3 Categorizing Obtuse Triangles using Variables
15. Exercise 17.3.4 Using Variables to Calculate Area
16. Exercise 17.3.5 Putting Triangles into Categories using Variables
18. ## Project: Who Said It?

1. ### 18.1 Project: Who Said It?

2. Video 18.1.1 File I/O
3. Quiz 18.1.2 File I/O
4. Demo 18.1.3 Who Said It? Demo
5. Exercise 18.1.4 Who Said It? - Part 1
6. Exercise 18.1.5 Who Said It? - Part 2
7. Exercise 18.1.6 Who Said It? - Part 3
8. Exercise 18.1.7 Who Said It? - Part 4
9. Badge 18.1.8 Who Said It? Badge
19. ## Python Graphics

1. ### 19.1 Creating the Canvas

2. Video 19.1.1 Creating the Canvas
3. Quiz 19.1.2 Creating the Canvas
4. Example 19.1.3 Create the Canvas
5. Example 19.1.4 X Marks the Spot
6. Exercise 19.1.5 Tic Tac Toe Board
7. Exercise 19.1.6 Bubble Letter
8. ### 19.2 Shapes and Attributes

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

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

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

29. Video 19.5.1 Using Loops in Graphics
30. Quiz 19.5.2 Using Loops in Graphics
31. Example 19.5.3 Phone Signal
32. Exercise 19.5.4 The Worm
33. Exercise 19.5.5 Growing Circles
34. Challenge 19.5.6 Sidewalk
35. ### 19.6 Graphics Challenges

36. Challenge 19.6.1 Block Tower