/pdxcg-intro-course

My labs from 2 week free introductory Python course

Primary LanguagePython

pdxcg-intro-course

These are my labs from PDX Code Guild's free introductory Python course in January 2020. The course was 3 hours per day for 3 days per week, totaling 18 hours of combined instruction and lab time across 2 weeks. All these solutions were originally written during classtime in Python 3.

I took this class to learn about the PDX Code Guild, keep my skills sharp by practicing a language I hadn't learned before, and because I enjoy a focused, classroom setting when I learn. Python's syntax is very different from PHP and C-like languages, and having it spelled out by an instructor was certainly helpful. Even so, language grammar is something I could have looked up - the benefit for me was mostly dedicating 3 hours of my evenings to coding against stepped lab problems in a focused environment with an instructor able to provide feedback.

As for the quality of instruction, the instructor and the TAs were gracious with my questions and generous in their feedback. Even so, googling questions about syntax or language features myself was usually the easiest way to progress through the labs. As for the content, the labs felt pretty well geared to graduated instruction in the language. Overall I can recommend the course as a good way to cover the basics of programming and Python for a beginner or an intermediate programmer unfamiliar with the language.

Lab Table of Contents

A short description of each lab and its purpose. Some labs include language features outside the expectations of the requirements as I took opportunities to try out other additional language features and patterns.

  • Lab 1: Hello World
    This "lab" was mainly a scratchpad for testing basic language features such as comments, output, and format strings. As the first day was very focused on total beginners, I spent that time trying out basic features by making a rudimentary fortune telling script (See the /tarot/ folder).
  • Lab 2: Madlibs
    A basic madlib generator to test basic user input. the acceptance of user input and the use of format strings.
  • Lab 3: Magic 8 Ball
    Fortune-telling app utilizing lists and module inclusion.
  • Lab 4: Grading
    Utility to convert a percentile grade into a letter grade using conditional logic.
  • Lab 5: Emoticon Generator
    Small program to either randomly or manually generate a variety of emoticons combining user input, lists, random.choice(), and loops.
  • Lab 6: Rock Paper Scissors
    A game of chance against the computer.
  • Lab 7: Guess the Number
    A game to guess a number against the computer.
  • Lab 8: Password Generator
    A utility to generate passwords according to user input.
  • Lab 9: Making Change (Not yet covered)
  • Lab 10: Anagram Checker (Not yet covered)
  • Lab 11: Wall Painting (Not yet covered)
  • Lab 12: Unit Converter
    A basic distance unit converter.
  • Lab 13: Encode/Rot13 (Not yet covered)
  • Lab 14: Turtle (Not yet covered)
  • Extra Project: Tarot
    A small Tarot/Fortune telling program which makes use of modularity and type conversion to convert ascii questions into tarot card readings.