THRIFT-1857 Python 3 Support
Client: Python
Patch: Thomas Bartelmess, Eevee (Alex Munroe), helgridly, Christian Verkerk, Jeroen Vlek, Nobuaki Sukegawa

This closes #213 and closes #680
diff --git a/tutorial/py.tornado/PythonClient.py b/tutorial/py.tornado/PythonClient.py
index 95d78b8..005ad3c 100755
--- a/tutorial/py.tornado/PythonClient.py
+++ b/tutorial/py.tornado/PythonClient.py
@@ -22,7 +22,7 @@
 import sys
 import glob
 sys.path.append('gen-py.tornado')
-sys.path.insert(0, glob.glob('../../lib/py/build/lib.*')[0])
+sys.path.insert(0, glob.glob('../../lib/py/build/lib*')[0])
 
 import logging
 
@@ -56,21 +56,21 @@
 
     # ping
     yield gen.Task(client.ping)
-    print "ping()"
+    print("ping()")
 
     # add
     sum_ = yield gen.Task(client.add, 1, 1)
-    print "1 + 1 = {}".format(sum_)
+    print("1 + 1 = {}".format(sum_))
 
     # make a oneway call without a callback (schedule the write and continue
     # without blocking)
     client.zip()
-    print "zip() without callback"
+    print("zip() without callback")
 
     # make a oneway call with a callback (we'll wait for the stream write to
     # complete before continuing)
     yield gen.Task(client.zip)
-    print "zip() with callback"
+    print("zip() with callback")
 
     # calculate 1/0
     work = Work()
@@ -80,9 +80,9 @@
 
     try:
         quotient = yield gen.Task(client.calculate, 1, work)
-        print "Whoa? You know how to divide by zero?"
+        print("Whoa? You know how to divide by zero?")
     except InvalidOperation as io:
-        print "InvalidOperation: {}".format(io)
+        print("InvalidOperation: {}".format(io))
 
     # calculate 15-10
     work.op = Operation.SUBTRACT
@@ -90,11 +90,11 @@
     work.num2 = 10
 
     diff = yield gen.Task(client.calculate, 1, work)
-    print "15 - 10 = {}".format(diff)
+    print("15 - 10 = {}".format(diff))
 
     # getStruct
     log = yield gen.Task(client.getStruct, 1)
-    print "Check log: {}".format(log.value)
+    print("Check log: {}".format(log.value))
 
     # close the transport
     client._transport.close()
diff --git a/tutorial/py.tornado/PythonServer.py b/tutorial/py.tornado/PythonServer.py
index 7a34107..4198214 100755
--- a/tutorial/py.tornado/PythonServer.py
+++ b/tutorial/py.tornado/PythonServer.py
@@ -22,7 +22,7 @@
 import sys
 import glob
 sys.path.append('gen-py.tornado')
-sys.path.insert(0, glob.glob('../../lib/py/build/lib.*')[0])
+sys.path.insert(0, glob.glob('../../lib/py/build/lib*')[0])
 
 from tutorial import Calculator
 from tutorial.ttypes import Operation, InvalidOperation
@@ -43,15 +43,15 @@
         self.log = {}
 
     def ping(self, callback):
-        print "ping()"
+        print("ping()")
         callback()
 
     def add(self, n1, n2, callback):
-        print "add({}, {})".format(n1, n2)
+        print("add({}, {})".format(n1, n2))
         callback(n1 + n2)
 
     def calculate(self, logid, work, callback):
-        print "calculate({}, {})".format(logid, work)
+        print("calculate({}, {})".format(logid, work))
 
         if work.op == Operation.ADD:
             val = work.num1 + work.num2
@@ -79,11 +79,11 @@
         callback(val)
 
     def getStruct(self, key, callback):
-        print "getStruct({})".format(key)
+        print("getStruct({})".format(key))
         callback(self.log[key])
 
     def zip(self, callback):
-        print "zip()"
+        print("zip()")
         callback()
 
 
@@ -93,11 +93,11 @@
     pfactory = TBinaryProtocol.TBinaryProtocolFactory()
     server = TTornado.TTornadoServer(processor, pfactory)
 
-    print "Starting the server..."
+    print("Starting the server...")
     server.bind(9090)
     server.start(1)
     ioloop.IOLoop.instance().start()
-    print "done."
+    print("done.")
 
 
 if __name__ == "__main__":