Boston Python Workshop 5/Staff notes

From OpenHatch wiki
Jump to navigation Jump to search

Lecture outline[edit]

review Friday material

  • math
  • type()
  • variables
  • strings
  • booleans
  • if/elif/else
  • functions

lists

  • why use them
  • initialization
  • type() review
  • len() review
  • accessing elements
  • adding elements
  • changing elements
  • slicing lists
  • strings are like lists

loops and more flow control: for, while, break

  • for loops
  • range()
  • if statements inside for loops
  • for loops inside for loops
  • while loops
  • infinite loop
  • break
  • if statements inside while loops
  • raw_input

dictionaries

  • why use them, key constraint
  • initialization
  • adding elements
  • accessing elements
  • changing elements
  • keys() and values()

modules

  • why modules
  • len and type are built in
  • imports
  • import random
  • random.randint
  • random.choice
  • ColorWall example
  • state_capitals.py

Where state_capitals.py from http://mit.edu/jesstess/www/BostonPythonWorkshop5/state_capitals.py is the grand finale and synthesis of lecture material.

Saturday Project outlines[edit]

ColorWall[edit]

  1. Review relevant material from lecture (e.g. dictionaries)
  2. Go over SolidColorTest and DictionaryTest in effects.py as a class
  3. Have students implement RainbowTest

If people finish (3) early, have them tweak existing effects or write a new one. Example tweaks including:

  • changing the hue bounds in Twinkle
  • change the math in Checkerboards
  • write and customize (e.g. colors) your own message in Message

Twitter[edit]

  1. Review relevant material from lecture (e.g. modules and imports)
  2. Go over search() and trendingTopics() in twitter_functions.py as a class
  3. Have students implement userTweets()

If people finish (3) early, have them implement trendingTweets() or customize the display of individual tweets displayed by search() (e.g. display the sender).

Wordplay[edit]

  1. Review relevant material from lecture (e.g. for loops)
  2. Go over words1.py through words6.py as a class
  3. Demo scrabble_cheater.py
  4. Have students explore other interesting word properties or play with scrabble_cheater.py (we've had people start Words With Friends games and cheat using the script)