要更改Unix系统中的终端控件,我们可以在Python中使用tty相关的方法。使用tty模块,我们可以设置终端的两种不同模式。该生模式和CBREAK模式。
要使用tty模块,我们应该使用-导入它
import tty
tty模块中有一些模块,它们是-
此方法用于将终端模式更改为原始模式。在原始模式下,光标移至新行,但未执行回车操作。同样,我们不需要按回车键将输入发送到系统,它会在写入后自动发送。
此方法用于将终端模式更改为cbreak模式。在此模式下,光标移至新行,我们无需按回车键即可将输入发送到系统,它会在写入后自动发送。
import sys import tty import termios file_desc = sys.stdin.fileno() old_setting = termios.tcgetattr(file_desc) tty.setraw(sys.stdin) for i in range(5): char = sys.stdin.read(1) print("Char: " + str(char)) termios.tcsetattr(file_desc, termios.TCSADRAIN, old_setting)
输出结果
$ python3 example.py Char: K Char: E Char: 5 Char: 2 Char: @