appbrewery/100-days-of-python
100 Days of Code in Python
repo name | appbrewery/100-days-of-python |
repo link | https://github.com/appbrewery/100-days-of-python |
homepage | https://www.appbrewery.co |
language | |
size (curr.) | 436 kB |
stars (curr.) | 431 |
created | 2020-01-24 |
license | |
100 Days of Python
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!
Day 1 - Working with Variables in Python to Manage Data
- 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
- Thonny.org - A Beginner Friendly Python IDE
- Python Variables Start
- Interactive Coding Exercise - Day 1.4 Variables
- Python Variables End
- Band Name Generator Start
- Band Name Generator Completed Code
Day 2 - Understanding Data Types and How to Manipulate Strings
- 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
Day 3 - Control Flow and Logical Operators
- 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
Day 4 - Randomisation and Python Lists
- 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
Day 5 - Python Loops
- 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
Day 6 - Python Functions & Karel
- 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
Day 7 - Hangman
- 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
Day 8 - Function Parameters & Caesar Cipher
- 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
Day 9 - Dictionaries, Nesting and the Secret Auction
- 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
- Challenge 1 Solution
- Challenge 2 Solution
- Day 9 Ending Code
- Secret Auction Starting Code
- Hint - Flowchart of Program
- Python Tutor
- Secret Auction Completed Code
Day 10 - Function Return Values and the Calculator Project
- 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
- Leap Year Challenge Solution
- Day 10 Ending Code
- Calculator Starting Code
- Calculator Completed Code
Day 11 - Blackjack Capstone Project
- 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
Day 12 - Scope and Namespacing in Python
- 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
Day 13 - Debugging: How to Find and Fix Errors in 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
Day 14 - Higher Lower Game Project
- Day 14 - Project Goal
- Fork Your Copy of the Day 14 Starting Code
- Try out the Online Higher Lower Game
- Day 14 Ending Code
Day 15 - Local Development Environment Setup & the Coffee Machine Project
- Step 1: Install Python 3 on your Machine
- Step 2: Download & Install Pycharm
- Python PEP8 Style Guide
- 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
Day 16 - Object Oriented Programming (OOP)
- 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
Day 17 - The Quiz Project & the Benefits of OOP
- 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
Day 18 - Turtle Graphics and GUIs
- 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
Day 19 - Instances, State and Higher Order Functions
- 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
Day 20 - Build the Snake Game Part 1: Animation & Coordinates
Day 21 - Build the Snake Game Part 2: Inheritance & List Slicing
- 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
Day 22 - Build Pong: The Famous Arcade Game
Day 23 - The Turtle Crossing Capstone Project
- Download the .zip for the Starting Code for the Turtle Crossing Game
- Solution Code to the Capstone Project
Day 24 - Files, Directories and Paths
- 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
Day 25 - Working with CSV Data and the Pandas Library
- Sample Weather Data as .csv
- Downlod 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
Day 26 - List Comprehension & the NATO Pilot’s Alphabet
- 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
Day 27 - Tkinter, *args, **kwargs and Creating GUI Programs
- 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
Day 28 - Tkinter, Dynamic Typing and the Pomodoro GUI Application
- 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 Dyamically Typed Programming Language
- How to Make Tkinter window go to the front
- Pomodoro Completed Project
Day 29 - Building a Password Manager GUI App with Tkinter
- 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
Day 30 - Errors, Exceptions and JSON Data: Improving the Password Manager
- 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
Day 31 - Capstone Project - Flash Card App
- Download the .zip for the Flash Card Program Starting Files
- Wikitionary 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
Day 32 - Send Email (smtplib) & Manage Dates (datetime): The Automated Birthday Wisher
- 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
Day 33 - API Endpoints and API Parameters - ISS Overhead Notifier
- 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
Day 34 - API Practice - Creating a GUI Quiz App
- 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
Day 35 - Keys, Authentication & Environment Variables: Send SMS
- 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
Day 36 - Stock Trading News 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
Day 37 - Habit Tracking Pixel Project
- Pixela
- Pixela API Documentation
- Requests Module Documentation
- w3schools Python Date Formatting with strftime
- Habit Tracking Completed Project
Day 38 - Build a Workout Tracking App that Talks to Google Sheets!
- OpenAi GPT-3
- Nutritionix API
- Nutritionix API Documentation
- Sheety API
- Workout Tracking Completed Project
Day 39 - Capstone Part 1: Flight Deal Finder
- 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
Day 40 - Capstone Part 2: Flight Club!
- Project Inspiration: Jack’s Flight Club
- [See the course lessons for the individual links](TODO: Add Link to Course)
Day 41 - Introduction to HTML
- The Complete Web Development Course
- Submarine Cable Map
- Atom Text Editor
- Useful Atom Pluggins
- 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 empahsis vs italicise tags
- The Wikigame
- Pascal Van Gemert’s Online CV
Day 42 - Intermediate HTML
Day 43 - Introduction to CSS
- Stanford CSS Cheatsheet
- Download the Debugging Problem Starting Files
- Download the Bacon Fan Site Starting Files
- 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
Day 44 - Intermediate CSS
- Markus Vogl Interactive Box Model Demo
- Download the CSS-My Site Images
- Download the StubCode.html file
- Is element block level or inline level?
- W3Schools documentation on Web Safe Fonts
- MDN documentation reference on CSS Properties and Pseudoclasses
- Broccoli and other images from emojipedia.org
- Z-Index Documentation on MDN
- Download Stacking Order Flowchart
- Completed Personal Site Project
Day 45 - Web Scraping with Beautiful Soup
- 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
Day 46 - Create a Spotify Playlist using the Musical Time Machine
- [See the course lessons for the individual links](TODO: Add Link to Course)
Day 47 - Create an Automated Amazon Price Tracker
- [See the course lessons for the individual links](TODO: Add Link to Course)
Day 48 - Selenium Webdriver and Game Playing Bot
- 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
Day 49 - Automating Job Applications on LinkedIn
Day 50 - Automated Tinder Swiper
Day 51 - Internet Speed Twitter Complaint Bot
- 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
Day 52 - Instagram Follower Bot
- Follow your competitor’s followers to grow your instagram account
- Instagram follower Bot Completed Code
Day 53 - Automated Data Entry Job
- Data Entry Jobs on Indeed
- Automating Your Job Reddit
- Automated Job Story
- Zillow Property search
- Google Forms
- Automated Data Entry Job Completed Code
Day 54 - Introduction to Web Development with Flask
- 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
Day 55 - HTML & URL Parsing in Flask and the Higher Lower Game
- Advanced Python Decorators Repl.it Code
- Interactive Coding Exercise - Day 55.1 Advanced Decorators
- Day 56 End and Completed Code for Higher-Lower Game
Day 56 - Rendering HTML/Static Files and Name Card Project
- Flask Quick Start on Rendering HTML templates
- My CV Website Hosted on GitHub
- Personal Site HTML and CSS .zip File
- HTML5 UP Website Templates
Day 57 - Templating with Jinja and Blog Project
- 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
Day 58 - Bootstrap
- TinDog Starting Files
- Get Bootstrap
- Bootstrap NavBar Codeply
- Bootstrap Grids Codeply
- Need sample text? Use a lorem ipsum generator: loremipsum.io
- Download the Tindog Completed Project Files
Day 59 - Upgraded Blog with Bootstrap
- 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
Day 60 - HTML Forms with Flask
- [See the course lessons for the individual links](TODO: Add Link to Course)
- Completed Code for Day 60 - Blog Website with Working Contact Form
Day 61 - Building Advanced Forms with WTForms
- [See the course lessons for the individual links](TODO: Add Link to Course)
- Completed Code for Day 61 - Secrets Website with WTForms