Muss ich übergeben Sie den vollständigen Pfad einer Datei in ein anderes Verzeichnis zu öffnen()?

Habe ich einen Ordner mit zehn Dateien, die ich will, um eine Schleife durch. Wenn ich drucken Sie den Namen der Datei meinen code gut funktioniert:

import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
    for f in filenames:
        print(f)

Ausgegeben:

1
2
3
4
5
6
7
8
9
10

Aber wenn ich versuche die Datei zu öffnen, in der Schleife bekomme ich ein IO-Fehler:

import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
    for f in filenames:
        log = open(f, 'r')

Traceback (most recent call last):
File "/home/des/my_python_progs/loop_over_dir.py", line 6, in <module>
log = open(f, 'r')
IOError: [Errno 2] No such file or directory: '1'
>>> 

Muss ich übergeben Sie den vollständigen Pfad der Datei, die auch innerhalb der Schleife zu open() Sie?

  • Versuchen Sie zu durchqueren, eine Verzeichnisstruktur oder sind Sie einfach nur interessiert in den regulären Dateien in einem bestimmten Verzeichnis/Ordner?
  • Ich weiß, diese Frage ist vier Jahre alt, aber es immer noch nicht über eine akzeptierte Antwort.
  • Ja. Verwandte: Python open() gibt IOError: Errno 2 No such file or directory
InformationsquelleAutor balcoder | 2012-08-03
Schreibe einen Kommentar