Advertisement
Guest User

Untitled

a guest
Nov 26th, 2015
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #! /usr/bin/python
  2.  
  3. # See README.txt for information and build instructions.
  4.  
  5. import addressbook_pb2
  6. import struct
  7. import sys
  8.  
  9. # Iterates though all people in the AddressBook and prints info about them.
  10. def ListPeople(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.  
  17. def getNext(f, person):
  18. sz = f.read(4)
  19. if not sz:
  20. return None
  21. ll = struct.unpack("I", sz)[0]
  22. ss = f.read(ll)
  23. return person.ParseFromString(ss)
  24.  
  25.  
  26. def putResult(f, person):
  27. ss = address_book.SerializeToString()
  28. f.write(struct.pack("I", len(ss)))
  29. f.write(ss)
  30.  
  31.  
  32. def main():
  33. address_book = addressbook_pb2.Person()
  34. # Read the existing address book.
  35. f1 = open(sys.argv[1], "rb")
  36. f2 = open(sys.argv[2], "rb")
  37.  
  38. e1 = getNext(f1, address_book)
  39. e2 = getNext(f2, address_book)
  40. while e1 and e2:
  41. if e1.id == e2.id:
  42. tmp = merge(e1, e2)
  43. putResult(f2, address_book, e3)
  44.  
  45.  
  46.  
  47.  
  48. ListPeople(address_book)
  49.  
  50. f.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement