Make python qps_worker --server_port consistent

The python qps_worker was changed in grpc/grpc#24350, adding support for
the --server_port flag. When the --server_port flag was set, the python
worker ignored the port specified in the Scenario's ServerConfig.

This behavior was inconsistent with Java and Go. In the workers for
those languages, the --server_port flag was used only when the
Scenario's ServerConfig port was unset. It did not override.

This commit alters the behavior of the python qps_worker to match Java
and Go, similar to grpc/grpc#24661 for C++. In addition, it updates the
documentation for the flag.
diff --git a/src/python/grpcio_tests/tests/qps/qps_worker.py b/src/python/grpcio_tests/tests/qps/qps_worker.py
index 3e74aa7..de8eefb 100644
--- a/src/python/grpcio_tests/tests/qps/qps_worker.py
+++ b/src/python/grpcio_tests/tests/qps/qps_worker.py
@@ -39,15 +39,18 @@
     logging.basicConfig(level=logging.DEBUG)
     parser = argparse.ArgumentParser(
         description='gRPC Python performance testing worker')
-    parser.add_argument('--driver_port',
-                        type=int,
-                        dest='driver_port',
-                        help='The port the worker should listen on')
-    parser.add_argument('--server_port',
-                        type=int,
-                        default=None,
-                        dest='server_port',
-                        help='The port the server should accept traffic on')
+    parser.add_argument(
+        '--driver_port',
+        type=int,
+        dest='driver_port',
+        help='The port for the worker to expose for driver communication')
+    parser.add_argument(
+        '--server_port',
+        type=int,
+        default=None,
+        dest='server_port',
+        help='The port for the server if not specified by server config message'
+    )
     args = parser.parse_args()
 
     run_worker_server(args.driver_port, args.server_port)
diff --git a/src/python/grpcio_tests/tests/qps/worker_server.py b/src/python/grpcio_tests/tests/qps/worker_server.py
index 0410ebc..5132dd8 100644
--- a/src/python/grpcio_tests/tests/qps/worker_server.py
+++ b/src/python/grpcio_tests/tests/qps/worker_server.py
@@ -92,7 +92,11 @@
             raise Exception('Unsupported server type {}'.format(
                 config.server_type))
 
-        server_port = config.port if self._server_port is None else self._server_port
+        if self._server_port is not None and config.port == 0:
+            server_port = self._server_port
+        else:
+            server_port = config.port
+
         if config.HasField('security_params'):  # Use SSL
             server_creds = grpc.ssl_server_credentials(
                 ((resources.private_key(), resources.certificate_chain()),))