code: def get_terminal_size():
      
      # If shutil has get_terminal_size() (Python 3.3 and later) use that
      if sys.version_info >= (3, 3):
          import shutil
          shutil_get_terminal_size = getattr(shutil, 'get_terminal_size', None)
          if shutil_get_terminal_size:
              sz = shutil_get_terminal_size()
              return sz.columns, sz.lines
  
      if get_winterm_size is not None:
          return get_winterm_size()
  
      def ioctl_gwinsz(fd):
          try:
              import fcntl
              import termios
              cr = struct.unpack(
                  'hh', fcntl.ioctl(fd, termios.TIOCGWINSZ, '1234'))
          except Exception:
              return
          return cr
  
      cr = ioctl_gwinsz(0) or ioctl_gwinsz(1) or ioctl_gwinsz(2)
      if not cr:
          try:
              fd = os.open(os.ctermid(), os.O_RDONLY)
              try:
                  cr = ioctl_gwinsz(fd)
              finally:
                  os.close(fd)
          except Exception:
              pass
      if not cr or not cr[0] or not cr[1]:
          cr = (os.environ.get('LINES', 25),
                os.environ.get('COLUMNS', DEFAULT_COLUMNS))
      return int(cr[1]), int(cr[0])
docs: Returns the current size of the terminal as tuple in the form
      ``(width, height)`` in columns and rows.