Wir können mehrere Dateien gleichzeitig öffnen und gemeinsam bearbeiten:
with open('doc1.txt') as d1, open('doc2.txt', 'w') as d2:
text = d1.read() # Alles aus doc1.txt lesen
d2.write(text) # Den Inhalt in doc2.txt schreiben
print('Done copying the content')
Hier haben wir die doc1.txt im r (read)-Modus und die doc2.txt im w (write)-Modus geöffnet. Mehrere open-Operationen werden durch ein Komma getrennt. Im Rumpf des with-Blocks sind alle geöffneten Dateien zugänglich, und wir können unterschiedliche Operationen an ihnen ausführen.
Herausforderung
Beim Entwickeln eines Systems zur Ähnlichkeitserkennung entscheidest du dich, zwei Dateien miteinander zu vergleichen. Du möchtest wissen, welcher Prozentsatz der Wörter in beiden Dateien vorhanden ist.
Die erste Datei ist source.txt und die zweite ist student.txt. Ermittle die Anzahl der einzigartigen Wörter in beiden Dateien und gib den Prozentsatz der einzigartigen Wörter in source.txt aus, die auch in student.txt vorhanden sind.
source.txt
student.txt
Ausgabe
Line 1
Line two
Line is important
33.333333
Line 1
Line two
Line 3
Line 1 is important
Yes
50
Erläuterung des ersten Beispiels: In source.txt gibt es 3 einzigartige Wörter (Line, 1, two). Das Wort Line kommt auch in student.txt vor, daher sind 33.33333% der einzigartigen Wörter von source.txt auch in der zweiten Datei vorhanden.