Python 诅咒得到 x 和 y

Python curses getting x and y

好的,我正在使用 curses 编写一个 python 应用程序,我正试图将我的文本置于终端的中心 window 从文档中你可以使用这个

curses.LINES and curses.COLS

我从 here

那里得到了这个

我猜他们 return x 和 y 作为整数

这是我的做法

screen.addstr(curses.LINES, curses.COLS, 'Please enter a number...', curses.color_pair(1))

但是当我 运行 我得到这个程序时

Traceback (most recent call last):
                                    File "main.py", line 102, in <module>
                                                                             main()
     File "main.py", line 47, in main
                                         screen.addstr(curses.LINES/2, curses.COLS/2, 'Please enter a number...', curses.color_pair(1))
                                                       TypeError: integer argument expected, got float

我除以 2 以获得中心,但它一直抛出错误

您不仅要计算 screen 的中心,还要将起点向左移动文本长度的一半。所以文字的中心和屏幕的中心落在同一个坐标上。

text = 'Please enter a number...'
screen.addstr(
    curses.LINES // 2,
    curses.COLS // 2 - len(text) // 2,
    text,
    curses.color_pair(1)
)