<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, query):
 """ Creates the view with the specified query. Args: query: the query to use to for the View; either a string containing a SQL query or a Query object. Returns: The View instance. Raises: Exception if the view couldn't be created or already exists and overwrite was False. """

    if isinstance(query, _query.Query):
      query = query.sql
    try:
      response = self._table._api.tables_insert(self._table.name, query=query)
    except Exception as e:
      raise e
    if 'selfLink' in response:
      return self
    raise Exception("View %s could not be created as it already exists" % str(self))