This is the course resources for the Official 100 Days of Python Course Feel free to make pull requests if you discover a missing link!
- Press the "Play" button (bottom right) to see the Day 1 - Project Goal
- Optional - Create an account on Repl.it
- Fork Your Copy of the Day 1 Starting Code
- Interactive Coding Exercise - Day 1.1 Printing
- Interactive Coding Exercise - Day 1.2 Debugging
- Interactive Coding Exercise - Day 1.3 Inputs
- Day 1 Ending Code
- Step through Execution with the Thonny IDE
- Alternative: Step through Execution with Python Tutor
- Python Variables Start
- Interactive Coding Exercise - Day 1.4 Variables
- Python Variables End
- Band Name Generator Start
- Band Name Generator Completed Code
- Press the "Play" button (bottom right) to see the Day 2 - Project Goal
- Fork Your Copy of the Day 2 Starting Code
- Interactive Coding Exercise - Day 2.1 Data Types
- Interactive Coding Exercise - Day 2.2 BMI Calculator
- Interactive Coding Exercise - Day 2.3 Life in Weeks
- BMI Explanation
- Tim Urban's Life in Weeks
- Tip Calculator Start
- Further reading on Floating Point numbers
- Tip Calculator Completed Code
- Press the "Play" button (bottom right) to see the Day 3 - Project Goal
- Rollercoaster Ticketing Flow Chart Version 1 - if else statements
- Fork Your Copy of the Day 3 Starting Code
- Interactive Coding Exercise - Day 3.1 Odd or Even
- Interactive Coding Exercise - Day 3.2 BMI Calculator 2.0
- Interactive Coding Exercise - Day 3.3 Leap Year
- Interactive Coding Exercise - Day 3.4 Pizza Order
- Interactive Coding Exercise - Day 3.5 Love Calculator
- More info on the % Modulus
- Rollercoaster Ticketing Flow Chart Version 2 - Nested if-else statements
- Rollercoaster Ticketing Flow Chart Version 3 - if-elif-else statements
- Nested if and elif End
- For the more curious - how leap years work
- Leap Year Flow Chart
- Rollercoaster Ticketing Flow Chart Version 4 - Multiple if statements
- Multiple if statements End
- Rollercoaster Ticketing Flow Chart Version 5 - with Midlife Crisis
- Treasure Island Starting Code
- Treasure Island Flow Chart
- Add your own ASCII art
- Treasure Island Completed Code
- Press the "Play" button (bottom right) to see the Day 4 - Project Goal
- The Mersenne Twister
- Random vs Pseudorandom Numbers
- Fork Your Copy of the Day 4 Starting Code
- Interactive Coding Exercise - Day 4.1 Heads or Tails
- Interactive Coding Exercise - Day 4.2 Who's Paying
- Interactive Coding Exercise - Day 4.3 Treasure Map
- AskPython's Documentation on Random
- Mouse Pointer Random Generator
- Iowa Lottery Fraud Mystery
- Python List Documentation
- Things that lists can do in Python
- Using Split to convert a String to a List
- Documentation on random.choice()
- List of States and Veg
- Dirty Dozen List of Foods
- The World Rock Paper Scissors Association
- Rock Paper Scissors Starter Code
- Rock Paper Scissors Completed Code
- Press the "Play" button (bottom right) to see the Day 5 - Project Goal
- Have I been pwned?
- Fork Your Copy of the Day 5 Starting Code
- Interactive Coding Exercise - Day 5.1 Average Height
- Interactive Coding Exercise - Day 5.2 Highest Score
- Interactive Coding Exercise - Day 5.3 Adding Evens
- Interactive Coding Exercise - Day 5.4 FizzBuzz
- For loop Lesson End
- Day 5 Ending Code
- Password Generator Start
- Password Generator Completed Code
- Built-in Python Functions
- Fork Your Copy of the Day 6 Starting Code
- Reeborgs World Start
- Reeborgs World Hurdles Challenge
- PEP 8 - The Python Style Guide
- Press the "Play" button (bottom right) to see the Day 7 - Project Goal
- How the Hangman Game works
- Play Hangman with Friends Online
- Hangman Program Flow Chart
- Challenge 1 Starting Code
- Challenge 1 Target Behaviour
- Hint - Python List Documentation
- Challenge 1 Completed Code
- Challenge 2 Starting Code
- Challenge 2 Target Behaviour
- Hint - Python Lists and Range()
- Challenge 2 Completed Code
- Challenge 3 Starting Code
- Challenge 3 Target Behaviour
- Challenge 3 Completed Code
- Challenge 4 Starting Code
- Challenge 4 Target Behaviour
- Flow Chart for Hangman
- Challenge 4 Completed Code
- Challenge 5 Starting Code
- Challenge 5 Target Behaviour
- Hint - Importing Modules
- Challenge 5 Completed Code
- Final Code
- Press the "Play" button (bottom right) to see the Day 8 - Project Goal
- Fork Your Copy of the Day 8 Starting Code
- Interactive Coding Exercise - Day 8.1 Area Calculation
- Interactive Coding Exercise - Day 8.2 Prime Number Checker
- Primer on Prime Numbers
- Day 8 - Ending Code
- Caesar Cipher 1 Start
- Python List index() Method
- Caesar Cipher 1 End
- Caesar Cipher 2 Start
- Caesar Cipher 2 End
- Caesar Cipher 3 Start
- Caesar Cipher 3 End
- Caesar Cipher 4 Start
- Caesar Cipher 4 End
- Press the "Play" button (bottom right) to see the Day 9 - Project Goal
- Fork Your Copy of the Day 9 Starting Code
- Interactive Coding Exercise - Day 9.1 Grading Program
- Interactive Coding Exercise - Day 9.2 Dictionary in List
- Day 9 Ending Code
- Secret Auction Starting Code
- Hint - Flowchart of Secret Auction
- Python Tutor
- Secret Auction Completed Code
- Press the "Play" button (bottom right) to see the Day 10 - Project Goal
- Fork Your Copy of the Day 10 Starting Code
- Interactive Coding Exercise - Day 10.1 Days in Month
- How to Convert Strings to Title Case
- Day 10 Ending Code
- Calculator Starting Code
- Calculator Completed Code
- Press the "Play" button (bottom right) to see the Day 11 - Project Goal
- Try out an online Blackjack game
- Fork Your Copy of the Blackjack Starting Code
- Python sum() Function
- Python list methods
- Blackjack Completed Code
- Press the "Play" button (bottom right) to see the Day 12 - Project Goal
- Fork Your Copy of the Day 12 Starting Code
- Day 12 Ending Code
- Get your own ASCII Text from Patorjk
- Guess the Number Completed Code
- Using Python Tutor to Step Through your Code
- Fork Your Copy of the Day 13 Starting Code
- Interactive Coding Exercise - Day 13.1 Debug Odd Even
- Interactive Coding Exercise - Day 13.2 Debug Leap Year
- Interactive Coding Exercise - Day 13.3 Debug FizzBuzz
- Day 13 Ending Code
- Debug your code online with Python Tutor
- Search Stack Overflow for Errors
- Press the "Play" button (bottom right) to see the Day 14 - Project Goal
- Fork Your Copy of the Day 14 Starting Code
- Try out the Online Higher Lower Game
- Day 14 Ending Code
- Step 1: Install Python 3 on your Machine
- Step 2: Download & Install Pycharm
- Python PEP8 Style Guide
- Press the "Play" button (bottom right) to see the Day 15 - Project Goal
- Download or Fork the Day 15 Starting Code
- Coffee Machine Program Specifications PDF Download
- PyCharm Keyboard Shortcuts
- Add a Coffee Emoji from Emojipedia.org
- How to bring up the Emoji Keyboard on Windows 10
- How to bring up the Emoji Keyboard on Mac
- Day 15 Ending Code
- Turtle Graphics Documentation
- Turtle Colours
- Pokemon Pokedex
- Python Package Index
- PrettyTable Package
- PrettyTable Package Documentation
- Steve Jobs on Object Oriented Programming
- OOP Coffee Machine Project Starting Code
- Download the .zip for the OOP Coffee Machine Project Starting Code
- Coffee Machine Classes Documentation
- Coffee Machine Project Requirements
- OOP Coffee Machine Project Final Code
- Press the "Play" button (bottom right) to see the Day 17 - Project Goal
- Download or Fork the Quiz Game Starting Code
- Download .zip for Quiz Game Starting Code
- Open Trivia Database
- Quiz Project Final Code
- Turtle Graphics Documentation
- Turtle Colours
- Trinket Turtle Colours
- Challenge 1 - Draw a Square - Starting Code
- Solution to Challenge 1
- Challenge 2 - Draw a Dashed Line - Starting Code
- Solution to Challenge 2
- Challenge 3 - Drawing Different Shapes - Starting Code
- Solution to Challenge 3
- Challenge 4 - Generate a Random Walk - Starting Code
- Random Walk Wikipedia Page
- Solution to Challenge 4
- RGB Tool from W3Schools
- Challenge 5 - Create a Spirograph - Starting Code
- Solution to Challenge 5
- Day 18 Ending Code
- Colorgram Package
- Hirst Painting Colour Extraction Code
- Hirst Painting Project Final Code
- The listen() method
- Download the .zip for the Etch-A-Sketch Challenge Starting Code
- Solution to the Etch-A-Sketch Challenge
- Starting code for the Turtle Race
- Completed code for the Turtle Race
- Inheritance Repl.it Example Code
- The shape() and shapesize() methods
- The write() method
- Piano Keys List Slicing Repl.it
- Completed Code for Snake Part 2
- Download the .zip for the Starting Code for the Turtle Crossing Game
- Solution Code to the Capstone Project
- Snake Project Code from Day 21
- The open() method
- Snake After Adding High Score Management
- Day 24 Ending Code
- Download the Mail Merge Project Starting Files
- Hint 1
- Hint 2
- Hint 3
- Mail Merge Project Completed Code
- Sample Weather Data as .csv
- Download the Weather Data Day 25 Starting Code
- Pandas Documentation
- Pandas API Reference
- Central Park Squirrel Census Data
- Day 25 End Code
- Sporkle Name the States Game
- Download .zip for the U.S. States Game Starting Files
- U.S. States Game Completed Repl
- Interactive Coding Exercise - Day 26.1 List Comprehension 1
- Interactive Coding Exercise - Day 26.2 List Comprehension 2
- Interactive Coding Exercise - Day 26.3 List Comprehension 3
- Interactive Coding Exercise - Day 26.4 Dictionary Comprehension 1
- Interactive Coding Exercise - Day 26.5 Dictionary Comprehension 2
- Day 26 End Code
- Download .zip for the NATO Alphabet Starting Files
- NATO Alphabet Starting Code & TODOs
- Completed Code NATO Alphabet Project
- Python Docs: The Packer
- TCL tk Docs: pack()
- Playground.py Completed Code
- TCL tk Docs: Entry()
- Tkinter Widget Example Code Palette
- Day 27 End Code
- Download the .zip for the Pomodoro Starting Files
- Use Color Hunt to Choose a Nice Colour
- TCL tk Docs: after()
- Python as a Strongly and Dynamically Typed Programming Language
- How to Make Tkinter window go to the front
- Pomodoro Completed Project
- Download the .zip for the Password Manager Starting Files
- Tkinter Canvas Widget Docs - create_image() method
- Tkinter Grid columnspan Demo Repl
- w3schools Python Writing to File Documentation
- Tkinter Entry Widget Docs
- Day 5 Password Generator Project Code
- w3schools Python join() method Documentation
- Pyperclip documentation on PyPi
- Password Manager End Code
- Download the .zip file for the Password Manager (End of Day 29)
- Interactive Coding Exercise - Day 30.1 IndexError Handling
- Interactive Coding Exercise - Day 30.2 KeyError Handling
- Download the .zip file for the NATO Phonetic Alphabet for the Code Exercise
- Solution to the Improved NATO Phonetic Alphabet Project
- Python JSON Module Documentation
- Day 30 End Code
- Improved Password Manager Project End Code
- Download the .zip for the Flash Card Program Starting Files
- Wiktionary Frequency Lists
- 2018 Frequency Lists from Hermit Dave
- Open Subtitles
- Google Sheets
- View Only - French Words Google Sheet
- Google Translate for Google Sheets
- Google Translate Language Codes
- Flash Card Program End Code
- Download the .zip for the SMTP Starting Files
- Python smtplib Documentation
- Python datetime Documentation
- 101 Monday Motivational Quotes from the Positivity Blog
- Day 32 End Code
- Normal Difficulty Birthday Wisher Project Starting .zip File
- Hard Difficulty Birthday Wisher Project Starting .zip File
- Extra Hard Difficulty Birthday Wisher Project Starting .zip File
- Host your Code in the Cloud with pythonanywhere
- Birthday Wisher Project Completed Code
- Application Programming Interface Wikipedia Entry
- International Space Station (ISS) Wikipedia Entry
- ISS Current Location API Documentation
- HTTP Status Codes
- Python Requests Module Documentation
- JSON Viewer Awesome Chrome Plugin
- Latitude and Longitude to Address Tool
- Kanye Quotes API
- Download the .zip for the Kanye Quotes Starting Files
- Kanye Quotes Completed Project Code
- Sunrise and Sunset Times API
- Find Your Current Latitude and Longitude Tool
- w3schools Python split() method Documentation
- Download the .zip for the ISS Notifier Starting Files
- ISS Overhead Notifier Final Code
- The Open Trivia Database
- Download the .zip for the Quizzler App Starting Files
- Documentation on HTML Entities
- FreeFormatter - HTML Unescape Tool
- StackOverflow Answer on Unescaping HTML Entities in Python
- How to Get TKinter Canvas Text to Wrap
- How to Disable Tkinter Buttons
- Python Type Hints Demo Code
- Quiz App Completed Code
- Create a free count on OpenWeatherMap
- OpenWeatherMap Current Weather API Documentation
- OpenWeatherMap OneCall Api Documentation
- Link to Your OpenWeatherMap API Key req. login
- Find Your Latitude/longitude
- Online JSON Viewer
- OpenWeatherMap Condition IDs and Condition Codes
- Find a Place that's raining using Ventusky
- Python Slice Function
- Python Slice Operator with Square Brackets
- Signup for Twilio
- Twilio SMS Quickstart Documentation for Python
- PythonAnywhere
- How to Get Twilio to Work on PythonAnywhere Free Accounts
- Environment Variables Wikipedia Entry
- Other APIs to Explore
- Completed Code for Rain Alert Project
- Normal Difficulty Starting Project
- Hard Difficulty Starting Project
- Extra Hard Difficulty Starting Project
- TSLA Stock Price
- Stock Price API
- News API
- Twilio API
- Completed Code for Stock Trading Alert Project
- Pixela
- Pixela API Documentation
- Requests Module Documentation
- w3schools Python Date Formatting with strftime
- Habit Tracking Completed Project
- OpenAi GPT-3
- Nutritionix API
- Nutritionix API Documentation
- Sheety API
- Workout Tracking Completed Project
- Download the .zip for the Flight Deals Starting Files
- Google Sheet Data Management
- Flight Search API (Free Signup)
- Flight Search API Documentation
- Twilio SMS API
- Project Inspiration: Jack's Flight Club
- [See the course lessons for the individual links](TODO: Add Link to Course)
- The Complete Web Development Course
- Submarine Cable Map
- Atom Text Editor
- Useful Atom Plugins
- VS Code Text Editor
- Experiment with HTML code on codepen.io
- The Adventures of Sherlock Holmes on Gutenberg.org
- MDN documentation on headings
- w3schools documentation on headings
- Alternative reference devdocs.io
- The Wayback Machine
- Professor Thomas H. Cormen's Personal Site
- Professor John Kleinberg's Personal Site
- Professor Emeritus Donald Knuth's Personal Site
- List of UTF-8 Characters
- List of Unicode Characters
- Joel Spolsky on Unicode
- HTML emphasis vs italicise tags
- The Wikigame
- Pascal Van Gemert's Online CV
- MDN Table Documentation
- MDN Form Documentation
- MDN Input Documentation
- Publish your website using Github Pages
- Stanford CSS Cheatsheet
- Toasty Technology classic 90s Style Website
- Sean Halpin's beautiful personal website
- MDN documentation on background colour
- Curated colour palettes on colorhunt.co
- Colour palette used in lectures
- Table of named colours on MDN
- Overview of default CSS applied by the browser
- MDN documentation on border-styles
- devdocs.io on CSS height
- W3Schools documentation on CSS Text
- Download the Debugging Problem Starting Files
- Download the Bacon Fan Site Starting Files
- MDN CSS Reference
- Emojipedia broccoli emoji
- CSS Properties and Pseudoclasses Reference (MDN)
- MDN :hover Documentation
- Create a Favicon with favicon.cc
- My colours from colorhunt
- Markus Vogl Interactive Box Model Demo
- Download the CSS-My Site Images
- Is the img element block level or inline level?
- MDN margin documentation
- W3Schools documentation on Web Safe Fonts
- cssfontstack.com
- Google Fonts
- Download the StubCode.html file
- Lorem Ipsum Generator
- flaticon.com
- giphy.com
- MDN CSS color property documentation
- MDN font-weight documentation
- css3buttongenerator.com
- Completed Personal Site Project
- Download the .zip for the Beautiful Soup Starting Files
- Beautiful Soup Documentation
- Y Combinator Hacker News
- Demo code from lessons
- Empire's Top 100 Movies of All Time
- Top 100 Movies Scraping Project Final Code
- The Cookie Clicker Game
- Download and Install the Chrome Browser
- Download and Install Selenium ChromeDriver
- Selenium Documentation
- w3schools XPath Tutorial
- Wikipedia Main Page
- Challenge URL: Form Sign Up
- Our Actual Newsletter
- The Complete Web Development Course
- Automated Cookie Clicker Completed Code
- Internet Speed Checker
- Does Tweeting at Companies Really Work?
- What it's Like to Cancel Comcast
- Comcast Twitter Bot
- Internet Speed Twitter Bot Completed Code
- Follow your competitor's followers to grow your instagram account
- Instagram follower Bot Completed Code
- Data Entry Jobs on Indeed
- Automating Your Job Reddit
- Automated Job Story
- Zillow Property search
- Google Forms
- Automated Data Entry Job Completed Code
- Flask Quick Start Documentation
- Flask Package on PyPi
- Windows Command Prompt Cheat Sheet
- Mac/Linux Terminal Cheat Sheet
- Python Built In Attributes e.g. name
- What is main?
- Python Decorators Docs
- Python Decorators Repl.it Code
- Interactive Coding Exercise - Day 54.1 Decorators
- Visualising Nested Function Return on PythonTutor
- Day 54 Completed Code for Flask Server
- Advanced Python Decorators Repl.it Code
- Interactive Coding Exercise - Day 55.1 Advanced Decorators
- Day 56 End and Completed Code for Higher-Lower Game
- Flask Quick Start on Rendering HTML templates
- My CV Website Hosted on GitHub
- Personal Site HTML and CSS .zip File
- HTML5 UP Website Templates
- Rendering Templates in Flask
- Jinja Documentation
- Day 57 Starting Files
- Update Your Footer
- Genderize API
- Agify API
- Day 57 End
- Blog Project Starting Code
- n:point JSON Bin
- n:point Fake Blog Data
- Blog Project Completed Code
- Codeply: Use Bootstrap in an Online Editor
- Bootstrap Homepage
- Boostrap Examples
- How to Install Bootstrap
- Submarine Cable Map
- Websites featured on awwwards.com
- Design patterns on ui-patterns.com
- Websites on dribbble.com
- Templates on sneakpeekit.com
- Wireframing with balsamiq
- Bootstrap Navbar
- Bootstrap Colour names
- Bootstrap NavBar Codeply
- Bootstrap Grid Codeply
- TinDog Starting Files
- Bootstrap Layout Grids
- Google Fonts: Montserrat
- Google Fonts: Ubuntu
- Bootstrap Containers
- Bootstrap Buttons
- Apple Icon on Font Awesome
- Hint: CSS Transform Function
- Bootstrap Carousel
- Bootstrap Card
- Cards Pricing Example
- Bootsnipp.com Examples
- Z-Index Documentation on MDN
- Download Stacking Order Flowchart
- Z-Index Codeply Example
- Mobile Friendly Test
- Download the Tindog Completed Project Files
- Clean Blog Bootstrap Template
- Flask URL Building for Static Files
- Jinja Variables
- Unsplash - Beautiful Free Photos
- Blog Title Image
- Blog Content NPoint API
- Completed Code for Day 59
- [See the course lessons for the individual links](TODO: Add Link to Course)
- Completed Code for Day 60 - Blog Website with Working Contact Form
- [See the course lessons for the individual links](TODO: Add Link to Course)
- Completed Code for Day 61 - Secrets Website with WTForms