Skip to content

Instantly share code, notes, and snippets.

@jiehanzheng
Created December 1, 2013 17:56
Show Gist options
  • Save jiehanzheng/7738477 to your computer and use it in GitHub Desktop.
Save jiehanzheng/7738477 to your computer and use it in GitHub Desktop.
from __future__ import print_function
import csv
import re
from collections import defaultdict
addresses = []
with open('google.csv', 'rb') as csv_file:
contacts_reader = csv.reader(csv_file)
for row in contacts_reader:
addresses.append(row[-1])
addresses = addresses[1:]
groups = {re.compile(r'-14@'): 'Class of 2014',
re.compile(r'-15@'): 'Class of 2015',
re.compile(r'-16@'): 'Class of 2016',
re.compile(r'-17@'): 'Class of 2017'}
addresses_by_group = defaultdict(lambda: [])
faculty_staff_addresses = []
for address in addresses:
for group_regexp in groups.keys():
if group_regexp.search(address):
addresses_by_group[groups[group_regexp]].append(address)
break
else:
faculty_staff_addresses.append(address)
group_tuples = sorted(addresses_by_group.items())
for group_tuple in group_tuples:
group_name, group_addresses = group_tuple
print(group_name)
print('='*len(group_name))
print(', '.join(group_addresses))
print()
print("Faculty and staff")
print("=================")
print(', '.join(faculty_staff_addresses))
print()
print("Entire school")
print("=============")
print(', '.join(addresses))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment