Difference between revisions of "Community Data Science Workshops (Spring 2014)/Saturday May 3rd lecture"

From OpenHatch wiki
Jump to navigation Jump to search
imported>Mako
imported>Mako
Line 18: Line 18:
 
#* urllib2 and urlopen
 
#* urllib2 and urlopen
 
#* JSON file (JavaScript Object Notation)
 
#* JSON file (JavaScript Object Notation)
 +
#** import json; json.loads()
 +
#** like Python (except no single quotes)
 +
#** simple lists, dictionaries
 +
#** can reflect more complicated data structures
 
#** Example file at http://mako.cc/cdsw.json
 
#** Example file at http://mako.cc/cdsw.json
#** Like Python (except no single quotes)
 
#** can create simple lists and dictionaries in python
 
#** can reflect more complicated data structures
 
 
# API
 
# API
 
#* definition of an API in general
 
#* definition of an API in general

Revision as of 03:31, 3 May 2014

Lecture Outline

  1. Review material from last session
    • variables, different types
    • printing
    • if statements
    • lists
    • dictionaries
    • for loops
    • modules
    • example python program
  2. New programming concepts:
    • open a file and write to it
    • open a file and append to it
    • join a string together
    • interpolate variables into a string using % and %()s
    • from syntax for importing
    • urllib2 and urlopen
    • JSON file (JavaScript Object Notation)
      • import json; json.loads()
      • like Python (except no single quotes)
      • simple lists, dictionaries
      • can reflect more complicated data structures
      • Example file at http://mako.cc/cdsw.json
  3. API
    • definition of an API in general
    • definition of web API for data
  4. placekitten.com
    • API that takes specially crafted URLs and gives appropriately sized picture of kittens
    • example of placekitten in browser
      • kittens of different sizes
      • kittens in greyscale or color
    • show how to use place
    • write a small program to grab arbitrary square from placekitten by asking for the size on standard in
  5. Wikipedia API
  6. Other APIs
    • every API is different, so read the documentation!
    • rate limiting
    • authenticaiton
    • text encoding issues