2012-02-14 16 views
8

Powiedzmy, że chcę utworzyć dokument z kodu wprowadzonego przez użytkownika, o nazwie spam.txt. Zakładając, że mam wejście użytkownik powiedzieć:Utwórz dokument tekstowy (Python)

input("Is Python Good? ") 

Jak mogę zapisać tekst, który użytkownik wprowadzone do pliku tekstowego, a można to zrobić?

+12

Jest to omówione w samouczku Python: http://docs.python.org/tutorial/inputoutput.html#reading-andwriting-files. Polecam zakończyć ten lub inny taki dokument, zanim przejdę do SO. – millimoose

+1

"... i czy można to zrobić?" :-) – donkopotamus

+5

To mi pomogło. Nie wiem, dlaczego został zamknięty. – razorsyntax

Odpowiedz

19
f = open('file.txt','w') 
a = input('is python good?') 
f.write('answer:'+str(a)) 
f.close() 

Łatwy nie? :)

+2

'str (a)' wydaje się robić rzeczy zbyt skomplikowane. Czy możesz wybrać jedną wersję Pythona (3.x lub 2.x) i użyć 'input' lub' raw_input', aby to ułatwić? –

+0

W jakim sensie zbyt skomplikowane? str (wartość) jest standardową komendą Pythona, jeśli użyjesz str() na łańcuchu, to nie boli, jeśli użyjesz go na liczbach, konwertuje je na łańcuchy, dzięki czemu ten dział działa. Ten kod działa zarówno w wersji 2.7, jak i 3.x, gdzie jest problem? – ingframin

+0

Jeśli używasz 'raw_input', w ogóle nie potrzebujesz' str'. To byłoby prostsze. Jeśli zdecydujesz się twierdzić, że jest to Python 3 i użyjesz 'input', w ogóle nie potrzebujesz' str'. To byłoby prostsze. –

8
with open('spam.txt', 'a') as f: 
    f.write(string_output) 
Powiązane problemy