2012-04-01 7 views
-1

Ich habe eine interact() Funktion, die ich für eine Datei fragen muss. Ich habe bereits eine Funktion load_maze (Dateiname), die mein Textdokument in Python lädt. Wie bekomme ich interact() um nach meinem Dateinamen in load_maze (Dateiname) zu fragen?Wie man nach einer Datei in Python fragt?

+2

Wie sieht Ihr Programm, äh, mit dem Benutzer interagieren? –

+0

Ist diese Kommandozeile oder wenn ja, welches Framework benutzen Sie? – jamylak

+0

Ich denke, Sie müssen ein wenig mehr Informationen darüber, was Ihr Problem ist. Es klingt wie Interaktion ist eine benutzerdefinierte Funktion, wenn ja, müssen Sie alle wissen lassen, was es tun soll. Es ist auch eine große Hilfe, wenn Sie wissen, was Sie versucht haben. Wenn Sie nur versuchen, Benutzereingabe über die Befehlszeile zu erhalten, dann können Sie diese Frage betrachten http://stackoverflow.com/questions/70797/python-and-user-input – rhololkeolke

Antwort

3

Anthony, vielleicht so etwas wie dies ?:

#!/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

Vielen Dank, das ist genau das, was ich gesucht habe. –

2

Das hängt von Ihrem Programm ab. Die einfachste Interaktion, die ich mir vorstellen kann, ist, in der Konsole danach zu fragen. Verwenden Sie raw_input.

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

wenn Sie verwenden jetzt py3k Vorsicht, weil raw_input()input() ist. input() ist auch in py2k aber es hat es ein anderes Verhalten als raw_input.

+0

@ Joaquin Wenn ich diesen Code verwende, wie bekomme ich Python zum Öffnen der Antwort (in Ihrem Beispiel) –

+0

@icktoofay danke, ja, es war mehrdeutig. Hoffnung ist jetzt klarer. – joaquin

+0

@AnthonyDo Ich bin mir nicht sicher, was du meinst. 'response' ist der Name einer Variablen, die sich in der Konsole befindet. Dann sollten Sie Ihre Funktion verwenden: 'load_maze (Antwort)' – joaquin

Verwandte Themen