2016-07-29 15 views
0

ist es möglich, in eine einzelne Datei von verschiedenen Funktionen Python zu schreiben.Schreiben in Datei von verschiedenen Funktionen (Python)

from __future__ import print_function 
f = open("txt.txt", "wb") 
def f1(): 
    ...write to txt.txt 
def f2(): 
    ...write to txt.txt 

ist es möglich?

+0

Ja, natürlich, die möglich ist. Warum nehmen die Funktionen nicht ein Datei-Handle als Parameter? – jonrsharpe

+0

Willkommen bei Stack Overflow! Ja, es ist möglich. Um hier eine gute Frage zu stellen, ist es gut zu zeigen, was Sie versucht haben - zum Beispiel haben Sie versucht, 'f' in die Funktionen zu übertragen und dann' f.write() 'oder ähnliches zu verwenden? –

+0

Sicher! Sie sollten es selbst ausprobieren. Und wie Jon und Richard sagten, sollten Sie das Dateihandle als Argument an Ihre Funktionen übergeben. –

Antwort

1

Nehmen Sie einfach die vorherigen Vorschläge und setzen Sie es in Code. Danke allen.

functions.py:

def f1(file): 
    file.write("Function one.") 

def f2(file): 
    file.write("Function two.") 

main.py:

from functions import f1, f2 

with open('text.txt','w') as f: 
    f1(f) 
    f2(f) 
+0

Danke chepner, ich selbst lernen. War die Beibehaltung des Namens des Moduls ** __ future __ **, stimmte aber dem Dateinamen zu. – pshep123