2012-04-01 48 views
-1

我有一个interact()函数,我需要问一个文件。我已经有一个函数load_maze(文件名),它在Python中加载我的文本文档。我如何获得交互()来请求我的文件名在load_maze(文件名)?如何在Python中请求文件?

+2

请问你的程序,呃,与用户进行交互? – 2012-04-01 04:52:52

+0

这是命令行还是图形化的(如果有的话)你在使用哪种框架? – jamylak 2012-04-01 04:54:23

+0

我认为你需要提供更多有关你的问题的信息。这听起来像交互是一种自定义功能,如果是这样,你需要让每个人都知道它应该做什么。同时让每个人都知道你所尝试的将会是一个很大的帮助。如果你只是试图从命令行获得用户输入,那么你可以看看这个问题http://stackoverflow.com/questions/70797/python-and-user-input – rhololkeolke 2012-04-01 04:56:06

回答

3

安东尼,也许这样的事情?:

#!/usr/bin/python 

def interact(): 
    fn = raw_input("Enter a filename: ") 
    return fn 

def load_maze(fn): 
    myfile = open(fn) 
    maze_txt = myfile.read() 
    myfile.close() 
    return maze_txt 

print load_maze(interact()) 
+0

非常感谢,这正是我所期待的。 – 2012-04-01 09:07:09

2

这取决于你的程序。我能想象的最简单的互动就是在控制台上要求它。使用raw_input

response = raw_input('give me a file name') 

如果您正在使用py3k要小心,因为raw_input()现在input()input()也是py2k但它有一个不同的行为比raw_input.

+0

@ joaquin如果我使用该代码,我如何获得python来打开响应(在你的例子中) – 2012-04-01 05:07:42

+0

@icktoofay谢谢,是的,它是模棱两可的。希望现在更清楚。 – joaquin 2012-04-01 05:08:32

+0

@AnthonyDo我不确定你的意思。 'response'是一个变量的名称,用于保存您在控制台中输入的参数。那么你应该使用你的函数:'load_maze(response)' – joaquin 2012-04-01 05:13:35