打印出 Python 列表

Printing out Python list

drinks = ['cola', 'water', 'beer', 'wine']

drinks = raw_input ("What did you drink? " + print drinks)

所以,基本上我希望程序向用户展示问题,然后打印出可能的答案。用户应将其中之一键入回程序。我试过上面的代码,但它不起作用。在 raw_input 之前打印 drinks 有点没有意义。我想你也可以这样去做:

drinks = ['cola', 'water', 'beer', 'wine']

drinks1 = raw_input("Hai, wanna have a look at the most popular drinks here?")
if drinks1 == "yes":
print drinks

drinks2 = raw_input("So, what did you drink?")

…但是有没有像 Python 中那样更简单的列表供用户选择?

预先感谢您的回答。

一个非常简单的解决方案可能是

drinks = ['cola', 'water', 'beer', 'wine']

drink = raw_input ("What did you drink? %s" % ', '.join(drinks))

if drink in drinks:
    print('you chose ' + drink)
else:
    print('invalid choice')

使用join从列表中创建一个字符串。

您可以使用 striplower 函数编写通用程序。其他都还好。

drinks = ['cola', 'water', 'beer', 'wine']

user_input = raw_input("Hai, wanna have a look at the most popular drinks here?")

if user_input.strip().lower() == "yes":
   print drinks

drinks2 = raw_input("So, what did you drink?")