Python诅咒-如何将多个菜单选项水平隔开?

问题描述 投票:0回答:1

我可以像这样在终端中轻松地垂直打印菜单选项列表:

menu = ["Option 1", "Option 2", "Option 3", "Option 4"]

for idx, element in enumerate(menu):
    y = 1 + idx
    x = 1

    stdscr.addstr(y, x, element)

这将在我当前的设置中输出以下内容:

Option 1
Option 2
Option 3
Option 4

但是我对如何水平执行此操作迷失了。我仅尝试了x = 1 + idx,但是这导致输出为OOOOption 4,并且尝试了一些变体。有谁知道我如何实现这一目标?谢谢。

python python-3.x curses python-curses
1个回答
0
投票

这里您需要做的是在循环外创建一个变量,该变量告诉x, y。然后,x值必须为old x value + len(element) + 1。所以

menu = ["Option 1", "Option 2", "Option 3", "Option 4"]
y, x = 0, 0
for idx, element in enumerate(menu):
    stdscr.addstr(y, x, element)
    x = x + len(element) + 1

希望我能帮上忙。

© www.soinside.com 2019 - 2024. All rights reserved.