Index: third_party/protobuf/examples/list_people.py |
diff --git a/third_party/protobuf/examples/list_people.py b/third_party/protobuf/examples/list_people.py |
new file mode 100755 |
index 0000000000000000000000000000000000000000..755de901a5a27aeccf42c02f6c90ed7a49dbb860 |
--- /dev/null |
+++ b/third_party/protobuf/examples/list_people.py |
@@ -0,0 +1,38 @@ |
+#! /usr/bin/env python |
+ |
+# See README.txt for information and build instructions. |
+ |
+import addressbook_pb2 |
+import sys |
+ |
+# Iterates though all people in the AddressBook and prints info about them. |
+def ListPeople(address_book): |
+ for person in address_book.people: |
+ print "Person ID:", person.id |
+ print " Name:", person.name |
+ if person.email != "": |
+ print " E-mail address:", person.email |
+ |
+ for phone_number in person.phones: |
+ if phone_number.type == addressbook_pb2.Person.MOBILE: |
+ print " Mobile phone #:", |
+ elif phone_number.type == addressbook_pb2.Person.HOME: |
+ print " Home phone #:", |
+ elif phone_number.type == addressbook_pb2.Person.WORK: |
+ print " Work phone #:", |
+ print phone_number.number |
+ |
+# Main procedure: Reads the entire address book from a file and prints all |
+# the information inside. |
+if len(sys.argv) != 2: |
+ print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE" |
+ sys.exit(-1) |
+ |
+address_book = addressbook_pb2.AddressBook() |
+ |
+# Read the existing address book. |
+f = open(sys.argv[1], "rb") |
+address_book.ParseFromString(f.read()) |
+f.close() |
+ |
+ListPeople(address_book) |