code: def bind(self, format, *args):
          
          return lib.zsock_bind(self._as_parameter_, format, *args)
docs: Bind a socket to a formatted endpoint. For tcp:// endpoints, supports
  ephemeral ports, if you specify the port number as "*". By default
  zsock uses the IANA designated range from C000 (49152) to FFFF (65535).
  To override this range, follow the "*" with "[first-last]". Either or
  both first and last may be empty. To bind to a random port within the
  range, use "!" in place of "*".
  
  Examples:
      tcp://127.0.0.1:*           bind to first free port from C000 up
      tcp://127.0.0.1:!           bind to random port from C000 to FFFF
      tcp://127.0.0.1:*[60000-]   bind to first free port from 60000 up
      tcp://127.0.0.1:![-60000]   bind to random port from C000 to 60000
      tcp://127.0.0.1:![55000-55999]
                                  bind to random port from 55000 to 55999
  
  On success, returns the actual port number used, for tcp:// endpoints,
  and 0 for other transports. On failure, returns -1. Note that when using
  ephemeral ports, a port may be reused by different services without
  clients being aware. Protocols that run on ephemeral ports should take
  this into account.