code: def _open(filename=None, mode='r'):
      
      if not filename or filename == '-':
          if not mode or 'r' in mode:
              file = sys.stdin
          elif 'w' in mode:
              file = sys.stdout
          else:
              raise ValueError('Invalid mode for file: {}'.format(mode))
      else:
          file = open(filename, mode)
  
      try:
          yield file
      finally:
          if file not in (sys.stdin, sys.stdout):
              file.close()
docs: Open a file or ``sys.stdout`` depending on the provided filename.
  
      Args:
          filename (str): The path to the file that should be opened. If
              ``None`` or ``'-'``, ``sys.stdout`` or ``sys.stdin`` is
              returned depending on the desired mode. Defaults to ``None``.
          mode (str): The mode that should be used to open the file.
  
      Yields:
          A file handle.