如何在 Python 中获取 Linux 控制台窗口的宽度?

linuxoperating systemopen source更新于 2026/2/14 23:52:17

为了在 Python 中获取 Linux 控制台的宽度和高度,我们可以使用不同的模块。其中两个是 os 模块 和 subprocess 模块。

对于 os 模块,我们使用 popen() 方法,该方法用于打开一个管道,用于接收和接收命令,这将有助于获取 Linux 窗口的宽度和高度。

请参考下面所示的代码 −

import os
rowSize, columnSize = os.popen('stty size', 'r').read().split()

print(rowSize)
print(colSize)

将上述代码保存为一个扩展名为 .py 的文件,并在终端运行以下命令。

输出

immukul@192 linux-questions-code % python code.py
38
130

在 subprocess 模块中,我们使用 check_output 方法获取 Linux 窗口的宽度和高度。

请参考下面所示的代码 −

import subprocess
rowSize, columnSize = subprocess.check_output(['stty', 'size']).split()
print(rowSize)
print(colSize)

输出

immukul@192 linux-questions-code % python code.py
38
130

它可以很容易看出,在我们编写的两个命令中,无论是 os.popen() 还是 subprocess.check_output(),我们都使用了 Linux 的实用命令 stty,它用于打印终端行设置,或者简单地说是 Linux 终端的特性,我们最终将从中提取高度和宽度。

这两种方法都可以在最新版和旧版 Python 中运行,但建议使用子进程命令,它被认为是 Python 的未来。


相关文章


有用资源