import os
rows, columns = os.popen('stty size', 'r').read().split()
menggunakan perintah 'stty size' yang menurut utas di milis python cukup universal di linux. Ini membuka perintah 'stty size' sebagai file, 'membaca' darinya, dan menggunakan pemisahan string sederhana untuk memisahkan koordinat.
Tidak seperti nilai os.environ["COLUMNS"] (yang tidak dapat saya akses meskipun menggunakan bash sebagai shell standar saya), datanya juga akan diperbarui sedangkan saya yakin os.environ["COLUMNS"] nilai hanya akan valid pada saat peluncuran juru bahasa python (misalkan pengguna mengubah ukuran jendela sejak saat itu).
(Lihat jawaban dari @GringoSuave tentang cara melakukannya di python 3.3+)
Tidak yakin mengapa itu ada di modul shutil
, tetapi mendarat di sana dengan Python 3.3. Lihat:
Menanyakan ukuran terminal keluaran
>>> import shutil
>>> shutil.get_terminal_size((80, 20)) # pass fallback
os.terminal_size(columns=87, lines=23) # returns a named-tuple
Implementasi tingkat rendah ada di modul os. Lintas platform—berfungsi di Linux, Mac OS, dan Windows, mungkin mirip Unix lainnya. Ada backport juga, meski tidak lagi relevan.