A Turtle Tale
A beginners' course with a difference. It's entirely visual. This course introduces the fundamentals of programming through graphics-based examples using Python's built-in `turtle` module. A fun way of learning the basics.
0.1 Getting started
0.2 About A Turtle Tale
0.3 Installing Python and Other Tools
1.1 First Words and turtle
1.2 Finding Out What A Turtle Can Do
1.3 Different Types of Objects in a Python Program
1.4 Introducing Fred and Mary
1.5 Fred and Mary Go On and On • while Loop
1.6 Where's Fred? • Using print()
1.7 Asking The Program To Make a Decision • if statements
1.8 Different Types of Objects (Again) • Data Types
1.9 Equals Equals Is Not The Same As Equals
1.10 Stopping Fred and Mary • Stopping The while Loop
1.11 Stopping When Mary Reaches The End Too
1.12 Your First Bug
1.13 Squashing Your First Bug
1.14 Reviewing Fred and Mary
1.15 Extra: Other ways of stopping the while loop
1.16 Extra: Changing The Font in fred.write()
1.17 Exercises
Become a member of The Python Coding Place
2.1 The Tale So Far
2.2 The Starry Night
2.3 Creating One Star
2.4 Creating Many Stars • The for Loop
2.5 More Objects • The Screen
2.6 Controlling When Things Are Displayed On The Screen
2.7 Finishing The Starry Night
2.8 Meet Monty (Introduction to the central analogy in A Turtle Tale)
2.9 Monty And Modules
2.10 When You Have A List Of Things To Store • Python's Lists
2.11 Many Angry Turtles Screensaver • Getting Started
2.12 Many Angry Turtles Screensaver • Setting Up Many Turtles
2.13 Many Angry Turtles Screensaver • Looping Through A List
2.14 Many Angry Turtles Screensaver • Finishing Touches
2.15 More On Lists • Indexing and Slicing
2.16 More On Lists • List Methods
2.17 Exercises
Become a member of The Python Coding Place
E2.1 The Bouncing Tennis Ball
E2.2 Another Way of Moving A Turtle
E2.3 Dropping The Ball And Gravity
E2.4 Bouncing Off The Ground
E2.5 Losing A Bit Of Energy Each Time The Ball Bounces
E2.6 Fixing The Disappearing Ball Bug
E2.7 A Side Note: f-strings
E2.8 Tossing The Ball Sideways (And Some Refactoring)
E2.9 Dealing With The Walls
E2.10 From One Ball To Many Balls
E2.11 [Advanced Topic] Giving Each Ball Its Own Velocity
3.1 Introducing Functions and The Bubble Chase Game
3.2 You've Used Many Functions Already
3.3 Let's Start
3.4 Planning the Game and Moving The Player Forward
3.5 Defining A Function
3.6 Binding A Function To A Key On The Keyboard
3.7 Parentheses
3.8 Teleporting The Player
3.9 Teleporting The Player Using A Function
3.10 Running The Program in Slow Motion
3.11 Creating A Bubble
3.12 Bursting The Bubbles
3.13 Adding A Timer
3.14 Stopping The Game
3.15 Controlling When The Game Starts
3.16 Running The Game Three Times In A Row
3.17 Local Variables In Functions
3.18 Finishing The Game, Finally!
3.19 Exercises
Become a member of The Python Coding Place
E3.1 Let's Discuss The Updates To The Game
E3.2 Many Bubbles
E3.3 Many Moving Bubbles
Choose between a monthly subscription or a one-time fee