【发布时间】:2021-01-09 20:50:20
【问题描述】:
(注:适用于 Windows 10 和 Python 3+)
我已经阅读了几篇关于如何使用 ANSI 转义码获取光标位置的帖子,但它们没有提供任何解决方案,至少对于 Python 没有。维基百科 (https://en.wikipedia.org/wiki/ANSI_escape_code) 在其游标管理列表中包含以下 ANSI 序列:
ESC 6n:DSR(设备状态报告)将光标位置 (CPR) 报告给应用程序(就像在键盘上键入一样)ESC[n;mR,其中 n 是行,m 是列.)
所以,如果你应用这个,使用print("\033[6n"),会发生什么是响应被“推送”到键盘,只有在脚本终止后,你会在 MS DOS 提示符下看到以下内容:^[[ 7;11R(数字视情况而定)。
现在,我真的不明白这有什么用!所以,我的问题是“我们可以'最终'使用提到的条件(Windows、ANSI代码和Python)获取有关光标位置的信息吗?” ...所以我可以一次性关闭这一章!
【问题讨论】:
-
不,使用 ANSI 转义码是不可能的。在安装
wheel和curses包后,您必须使用curses.getsyx方法。 -
我很清楚。这就是为什么我强调“使用上述条件”。我还能强调多少?
标签: python-3.x windows ansi