Python:如何在变量中存储输入的REQUEST?

时间:2015-06-14 07:03:21

标签: python

我正在构建一个文本游戏,需要在一个变量中存储两件事:a string, and a request for input。请注意,我意味着存储请求的输出 - 我的意思是,如果调用变量,则会打印字符串和请求本身,之后用户回答请求。

raw_input("Do you do X or Y?")因此对我无效,因为我需要在部署之前存储请求。

关于我的方法的一些背景知识:

所有内容都存储在词典中,其中键是用户的当前位置,值可能是选择:

dict = {location1: (location2, location3), location2: (location1, location4)...}

因此,我print location1会同时打印描述该位置的string并制作request for input。输入触发程序打印下一个适当的位置,程序继续运行。

我试图找出一个执行此操作的递归函数。

对于每个位置,输入请求的措辞都不同,这就是为什么我不将请求构建到递归函数中。

旁注:如果有人有任何其他建议/不同的方法我应该使用,请分享那些!

1 个答案:

答案 0 :(得分:0)

  

对于每个位置,输入请求的措辞不同,

只需为每个位置对应的输入请求创建另一个字典。例如:

requests_dict = {
    'location1': 'Please enter xxx: ',
    'location2': 'Do you do X or Y: ',    # and so on
}

然后使用该dict打印请求。

user_input = raw_input(requests_dict['location2'])

当然,您希望根据某些逻辑制作最后一个代码,以便调用哪个代码,但我认为您可以理解。

更新

responses_dict = {}
user_input = raw_input(requests_dict['location2'])
responses_dict[user_input] = 'You are in %s' % user_input