Skip to content

Instantly share code, notes, and snippets.

@eleddy
Created November 29, 2012 20:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eleddy/4171635 to your computer and use it in GitHub Desktop.
Save eleddy/4171635 to your computer and use it in GitHub Desktop.
Noisebridge Python class on dictionaries - ipython notebook export
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "Untitled0"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": "new_list = [1,2,3]\nnew_list.append(4)\nnew_list.remove(4)\nnew_list = new_list + [5]\nlast_item = new_list.pop()\nprint last_item\n\nfor item in new_list:\n print item",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "5\n1\n2\n3\n"
}
],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": "# sets are useful for getting rid of duplicates \n# and anything with union and intersection\nanother_list = [1, 2, 2, 3]\nme = set(another_list)\nprint another_list\nprint me",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "[1, 2, 2, 3]\nset([1, 2, 3])\n"
}
],
"prompt_number": 66
},
{
"cell_type": "code",
"collapsed": false,
"input": "user = {'id': 'zshaw',\n 'name': 'Zed', \n 'age': 36, \n 'height': 6*12+2,\n }\nprint user",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "{'age': 36, 'height': 74, 'id': 'zshaw', 'name': 'Zed'}\n"
}
],
"prompt_number": 15
},
{
"cell_type": "code",
"collapsed": false,
"input": "user['name'] = 'Shaw-Thomas'\nprint user",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "{'age': 36, 'height': 74, 'id': 'zshaw', 'name': 'Shaw-Thomas'}\n"
}
],
"prompt_number": 16
},
{
"cell_type": "code",
"collapsed": false,
"input": "user['email'] = 'zshaw@motherfuckingprograming.com'\nprint \"%s's email is %s\" % (user['name'], user['email'])",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "Shaw-Thomas's email is zshaw@motherfuckingprograming.com\n"
}
],
"prompt_number": 17
},
{
"cell_type": "code",
"collapsed": false,
"input": "user[1] = 'pants'\nuser[(1,2)] = 'why would you ever do this'\nprint user[(1,2)]",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "why would you ever do this\n"
}
],
"prompt_number": 21
},
{
"cell_type": "code",
"collapsed": false,
"input": "print user[2]",
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "KeyError",
"evalue": "2",
"output_type": "pyerr",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-22-644ac13ffb3b>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mprint\u001b[0m \u001b[0muser\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mKeyError\u001b[0m: 2"
]
}
],
"prompt_number": 22
},
{
"cell_type": "code",
"collapsed": false,
"input": "print user[(1,)]",
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "KeyError",
"evalue": "(1,)",
"output_type": "pyerr",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-23-da4a4fc67c09>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mprint\u001b[0m \u001b[0muser\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mKeyError\u001b[0m: (1,)"
]
}
],
"prompt_number": 23
},
{
"cell_type": "code",
"collapsed": false,
"input": "print user[(1,2)]",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "why would you ever do this\n"
}
],
"prompt_number": 24
},
{
"cell_type": "code",
"collapsed": false,
"input": "print user['phone']",
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "KeyError",
"evalue": "'phone'",
"output_type": "pyerr",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-25-84b19334ae42>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mprint\u001b[0m \u001b[0muser\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'phone'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mKeyError\u001b[0m: 'phone'"
]
}
],
"prompt_number": 25
},
{
"cell_type": "code",
"collapsed": false,
"input": "user['phone'] = '111-111-1111'\nprint user['phone']",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "111-111-1111\n"
}
],
"prompt_number": 26
},
{
"cell_type": "code",
"collapsed": false,
"input": "# old school\nprint user.has_key('cell')",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "False\n"
}
],
"prompt_number": 27
},
{
"cell_type": "code",
"collapsed": false,
"input": "# new school: python 2.d and up\nprint 'cell' in user",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "False\n"
}
],
"prompt_number": 28
},
{
"cell_type": "code",
"collapsed": false,
"input": "user['cell'] = '222-222-2222'\nprint 'cell' in user\nprint user['cell']",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "True\n222-222-2222\n"
}
],
"prompt_number": 30
},
{
"cell_type": "code",
"collapsed": false,
"input": "del user['cell']\nprint 'cell' in user",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "False\n"
}
],
"prompt_number": 31
},
{
"cell_type": "code",
"collapsed": false,
"input": "print user",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "{(1, 2): 'why would you ever do this', 1: 'pants', 'name': 'Shaw-Thomas', 'age': 36, 'height': 74, 'phone': '111-111-1111', 'id': 'zshaw', 'email': 'zshaw@motherfuckingprograming.com'}\n"
}
],
"prompt_number": 32
},
{
"cell_type": "code",
"collapsed": false,
"input": "print user.items()",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "[((1, 2), 'why would you ever do this'), (1, 'pants'), ('name', 'Shaw-Thomas'), ('age', 36), ('height', 74), ('phone', '111-111-1111'), ('id', 'zshaw'), ('email', 'zshaw@motherfuckingprograming.com')]\n"
}
],
"prompt_number": 33
},
{
"cell_type": "code",
"collapsed": false,
"input": "for key, value in user.items():\n print \"The key is %s and the value is %s\" %(key, value)",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "The key is (1, 2) and the value is why would you ever do this\nThe key is 1 and the value is pants\nThe key is name and the value is Shaw-Thomas\nThe key is age and the value is 36\nThe key is height and the value is 74\nThe key is phone and the value is 111-111-1111\nThe key is id and the value is zshaw\nThe key is email and the value is zshaw@motherfuckingprograming.com\n"
}
],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": "for item in user:\n print \"The key is %s and the value is %s\" %(item, user[item])",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "The key is (1, 2) and the value is why would you ever do this\nThe key is 1 and the value is pants\nThe key is name and the value is Shaw-Thomas\nThe key is age and the value is 36\nThe key is height and the value is 74\nThe key is phone and the value is 111-111-1111\nThe key is id and the value is zshaw\nThe key is email and the value is zshaw@motherfuckingprograming.com\n"
}
],
"prompt_number": 39
},
{
"cell_type": "code",
"collapsed": false,
"input": "states = {\n 'Oregon': 'OR',\n 'Florida': 'FL',\n 'California': 'CA',\n 'New York': 'NY',\n 'Michigan': 'MI'\n}\nprint states.keys()",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "['California', 'Michigan', 'New York', 'Florida', 'Oregon']\n"
}
],
"prompt_number": 40
},
{
"cell_type": "code",
"collapsed": false,
"input": "print states.values()",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "['CA', 'MI', 'NY', 'FL', 'OR']\n"
}
],
"prompt_number": 42
},
{
"cell_type": "code",
"collapsed": false,
"input": "cities = {\n 'CA': 'San Francisco',\n 'MI': 'Detroit',\n 'FL': 'Jacksonville',\n 'HI': 'Kona',\n}\ncities['NY'] = 'New York'\n\nprint cities",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "{'FL': 'Jacksonville', 'CA': 'San Francisco', 'MI': 'Detroit', 'NY': 'New York'}\n"
}
],
"prompt_number": 43
},
{
"cell_type": "code",
"collapsed": false,
"input": "for state_name, state_id in states.items():\n # This is a useless comment\n if state_id in cities:\n print cities[state_id]\n else:\n print state_id, \"has no cities listed\"",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "San Francisco\nDetroit\nNew York\nJacksonville\nOR has no cities listed\n"
}
],
"prompt_number": 48
},
{
"cell_type": "code",
"collapsed": false,
"input": "print cities.get('NY')",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "New York\n"
}
],
"prompt_number": 49
},
{
"cell_type": "code",
"collapsed": false,
"input": "print cities.get('OR')",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "None\n"
}
],
"prompt_number": 50
},
{
"cell_type": "code",
"collapsed": false,
"input": "cities['OR']",
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "KeyError",
"evalue": "'OR'",
"output_type": "pyerr",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-51-b3c1cc861124>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mcities\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'OR'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mKeyError\u001b[0m: 'OR'"
]
}
],
"prompt_number": 51
},
{
"cell_type": "code",
"collapsed": false,
"input": "# Example comment that may be warranted. Maybe.\n# Get can return a default value if the key doesn't \n# exist. Because I'm lazy today\nprint cities.get('MI', 'No cities on file')\nprint cities.get('OR', 'No cities on file')",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "Detroit\nNo cities on file\n"
}
],
"prompt_number": 53
},
{
"cell_type": "code",
"collapsed": false,
"input": "city = cities.get('OR')\nprint city or \"No cities on file\" # the more pythonic way",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "No cities on file\n"
}
],
"prompt_number": 56
},
{
"cell_type": "code",
"collapsed": false,
"input": "# the verbose way of printing ln 56\nif city:\n print city\nelse:\n print \"Try michigan next time\"",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "Try michigan next time\n"
}
],
"prompt_number": 58
},
{
"cell_type": "code",
"collapsed": false,
"input": "# there is no guaruntee in the worder this is returned. \n# EVER!\nprint cities.keys()",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "['FL', 'CA', 'MI', 'NY']\n"
}
],
"prompt_number": 59
},
{
"cell_type": "code",
"collapsed": false,
"input": "print sorted(cities.keys())",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "['CA', 'FL', 'MI', 'NY']\n"
}
],
"prompt_number": 60
},
{
"cell_type": "code",
"collapsed": false,
"input": "# sort by the lower case of the key\n# key = crazy ass shit you'll use later\nprint sorted(cities.keys(), key=str.lower, reverse=True)",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "['NY', 'MI', 'FL', 'CA']\n"
}
],
"prompt_number": 63
},
{
"cell_type": "code",
"collapsed": false,
"input": "# print cities in alphabetical order\n# Marshalling!\nnew_cities = []\nfor state_name, state_id in states.items():\n if state_id in cities:\n new_cities.append(cities[state_id])\nprint sorted(new_cities)",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "['Detroit', 'Jacksonville', 'New York', 'San Francisco']\n"
}
],
"prompt_number": 65
},
{
"cell_type": "code",
"collapsed": false,
"input": "",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 68
},
{
"cell_type": "code",
"collapsed": false,
"input": "",
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment