Чтобы получить размер терминала в Python, вы можете использовать различные методы в зависимости от операционной системы, над которой вы работаете. Вот несколько методов для разных платформ:
-
Метод для Unix/Linux/Mac OS:
import os rows, columns = os.popen('stty size', 'r').read().split() print("Terminal size: {} rows x {} columns".format(rows, columns))
-
Метод для 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]))
-
Метод с использованием модуля
shutil
(кроссплатформенный):import shutil columns, rows = shutil.get_terminal_size() print("Terminal size: {} rows x {} columns".format(rows, columns))