<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create(self, name, metadata=None, prefix=None, *args, **kwargs):
 """ Creates a new container, and returns a Container object that represents that contianer. If a container by the same name already exists, no exception is raised; instead, a reference to that existing container is returned. """

        uri = "/%s" % name
        headers = {}
        if prefix is None:
            prefix = CONTAINER_META_PREFIX
        if metadata:
            metadata = _massage_metakeys(metadata, prefix)
            headers = metadata
        resp, resp_body = self.api.method_put(uri, headers=headers)
        if resp.status_code in (201, 202):
            hresp, hresp_body = self.api.method_head(uri)
            num_obj = int(hresp.headers.get("x-container-object-count", "0"))
            num_bytes = int(hresp.headers.get("x-container-bytes-used", "0"))
            cont_info = {"name": name, "object_count": num_obj,
                    "total_bytes": num_bytes}
            return Container(self, cont_info)
        elif resp.status_code == 400:
            raise exc.ClientException("Container creation failed: %s" %
                    resp_body)