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


为了在 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,但建议使用 subprocess 方法,它被认为是 Python 的未来。

更新于: 2021-07-30

387 次查看

启动你的 职业生涯

通过完成课程获得认证

开始
广告