命令行:显示选项列表并允许用户选择

2024-05-01 22:07:57 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个选项列表:

options = ["Option 1", "Option 2", "Option 3"]

我希望用户在命令行中选择一个选项,例如:

Please choose:
1) Option 1
2) Option 2
3) Option 3
Enter number: <user input>

因此,我希望实现以下内容:

choice = let_user_pick(options) # returns integer

在python中如何实现这一点?


Tags: 命令行用户number列表input选项optionsoption
1条回答
网友
1楼 · 发布于 2024-05-01 22:07:57
def let_user_pick(options):
    print("Please choose:")
    for idx, element in enumerate(options):
        print("{}) {}".format(idx+1,element))
    i = input("Enter number: ")
    try:
        if 0 < int(i) <= len(options):
            return int(i)
    except:
        pass
    return None

您可能希望返回int(i)-1,以便将结果用作选项列表的索引,或者直接返回选项。在用户输入正确的选择之前,最好不要在整个过程中返回None循环。

相关问题 更多 >