是否在不使用“ if”语句的情况下检查用户输入?

时间:2019-01-24 03:40:40

标签: python computer-science

对于我的家庭作业,我正在尝试一种无需使用if语句即可检查用户输入的方法。

这就是使用“ if”语句实现算法的方式

if userInput == "books":
    printBooks()
else:
    addBooks()

是否有一种无需使用if语句即可实现相同功能的方法?

3 个答案:

答案 0 :(得分:1)

如果您只是不想在代码中看到if,可以这样做:

func = {"book": printBooks}
func.get(userInput, addBooks)()

您将函数作为dict的对象,根据用户输入作为键来检索它,并使用默认的后备,然后调用该函数。

是的,在实践中这是一个不好的方法。

答案 1 :(得分:0)

永远都不需要这样做,但是:

(addBooks, printBooks)[userInput == "books"]()

答案 2 :(得分:-1)

对于python,您可以像这样使用 如果userInput ==“ books”,则bookData = printBooks()否则addBooks()