list_people.py revision fbaaef999ba563838ebd00874ed8a1c01fbf286d
1#! /usr/bin/python
2
3# See README.txt for information and build instructions.
4
5import addressbook_pb2
6import sys
7
8# Iterates though all people in the AddressBook and prints info about them.
9def ListPeople(address_book):
10  for person in address_book.person:
11    print "Person ID:", person.id
12    print "  Name:", person.name
13    if person.HasField('email'):
14      print "  E-mail address:", person.email
15
16    for phone_number in person.phone:
17      if phone_number.type == addressbook_pb2.Person.MOBILE:
18        print "  Mobile phone #:",
19      elif phone_number.type == addressbook_pb2.Person.HOME:
20        print "  Home phone #:",
21      elif phone_number.type == addressbook_pb2.Person.WORK:
22        print "  Work phone #:",
23      print phone_number.number
24
25# Main procedure:  Reads the entire address book from a file and prints all
26#   the information inside.
27if len(sys.argv) != 2:
28  print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE"
29  sys.exit(-1)
30
31address_book = addressbook_pb2.AddressBook()
32
33# Read the existing address book.
34f = open(sys.argv[1], "rb")
35address_book.ParseFromString(f.read())
36f.close()
37
38ListPeople(address_book)
39