在 python cmd 中输入中心?
Center input in python cmd?
我正在 python 中开发经典 text-adventure 端口。
我想知道是否可以将用户输入居中?
我发现使用 str.center() 方法,我可以将打印的文本居中,但是,我无法将 python input() 函数居中。使用 str.center() 只是给我这个:
如您所见,输入从中间开始,然后一直向右延伸
我想做的是无论用户输入什么,它都像这样在中间:
(如果你想知道,我没有解决我自己的问题,这只是一个使用打印而不是输入的模拟)
所以我想知道我该怎么做?完全使用 str.center() 或 Curses 或其他东西?
你可以用诅咒来做到这一点。 input()
和 str.center()
不会有太大帮助,因为它们事先不知道屏幕的宽度(以及输入字符串时如何将输入字符串居中)。
使用 curses,您可以使用 filter
function to set aside the current line of the screen (rather than erasing the whole screen...), create a window in that line using newwin
and use mvwin
调整 window 的输入位置(或者只是 move
在原始 stdscr
中)。有几种方法可以用 curses 来实现这一点——但比 input()
.
更复杂
我正在 python 中开发经典 text-adventure 端口。
我想知道是否可以将用户输入居中?
我发现使用 str.center() 方法,我可以将打印的文本居中,但是,我无法将 python input() 函数居中。使用 str.center() 只是给我这个:
如您所见,输入从中间开始,然后一直向右延伸
我想做的是无论用户输入什么,它都像这样在中间:
所以我想知道我该怎么做?完全使用 str.center() 或 Curses 或其他东西?
你可以用诅咒来做到这一点。 input()
和 str.center()
不会有太大帮助,因为它们事先不知道屏幕的宽度(以及输入字符串时如何将输入字符串居中)。
使用 curses,您可以使用 filter
function to set aside the current line of the screen (rather than erasing the whole screen...), create a window in that line using newwin
and use mvwin
调整 window 的输入位置(或者只是 move
在原始 stdscr
中)。有几种方法可以用 curses 来实现这一点——但比 input()
.