1

我的意思是我已经设置了一个选择框。

    msg = "What would you like to do first?"
title = "Economy v1.0"
choices = ["Check your bank balance", 
           "Check the value of the stocks", 
           "Check what stocks you own", 
           "Buy stocks", 
           "Sell Stocks", 
           "Move to the next day.", 
           "Exit"]
choice = eg.choicebox(msg, title, choices)

但现在我想知道选择选择时如何做某事。网站上的教程没有提供太多帮助,我尝试过的所有东西都没有奏效。

我首先尝试这样做:

if choice == choice[0]:
    #do stuff
if choice == choice[1]:
    #do more stuff
...

当我选择一个选项时,什么都没有发生。

所以我尝试了这个:

if choice == "Buy Stocks":
    #do stuff
if choice == "Sell Stocks":
    #do stuff
...

但这也没有用。我已经尝试了一系列其他的东西,但我不完全确定选择框返回什么,以及它将它存储在什么变量中。有人可以帮我吗?

4

2 回答 2

2

你正在做的应该是有效的。这些 if 语句中的任何一个都应该没问题,只要记住字符串是区分大小写的。

easygui.choicesbox() 将返回一个字符串给你分配给它的变量。在这种情况下,它会要求进行选择,然后将您选择的值填充到您的变量choice中。请记住,选择框总是返回一个字符串。

如果你尝试choice in choices它应该返回 True。

于 2012-02-27T06:39:00.313 回答
0

对于任何来到这里并想知道的人:这里的问题是,他没有正确调用列表。他打电话给choice[]而不是choice[]

if choice == choices[0]:
    #do stuff
if choice == choices[1]:
    #do more stuff
...

这样做是有效的。

于 2022-03-05T19:55:22.777 回答