Получить размер терминала в Python для разных операционных систем

Чтобы получить размер терминала в Python, вы можете использовать различные методы в зависимости от операционной системы, над которой вы работаете. Вот несколько методов для разных платформ:

  1. Метод для Unix/Linux/Mac OS:

    import os
    rows, columns = os.popen('stty size', 'r').read().split()
    print("Terminal size: {} rows x {} columns".format(rows, columns))
  2. Метод для Windows:

    import ctypes
    std_handle = ctypes.windll.kernel32.GetStdHandle(-12)
    cols = ctypes.create_string_buffer(2)
    rows = ctypes.create_string_buffer(2)
    ctypes.windll.kernel32.GetConsoleScreenBufferInfo(std_handle, ctypes.byref(ctypes.c_ulong()), ctypes.byref(ctypes.c_ulong()), ctypes.byref(ctypes.c_short()), ctypes.byref(ctypes.c_short()), ctypes.byref(rows), ctypes.byref(cols)))
    print("Terminal size: {} rows x {} columns".format(struct.unpack('hh', rows)[0], struct.unpack('hh', cols)[0]))
  3. Метод с использованием модуля shutil(кроссплатформенный):

    import shutil
    columns, rows = shutil.get_terminal_size()
    print("Terminal size: {} rows x {} columns".format(rows, columns))