Seite 1 von 1
nur Dateien anzeigen die mit bestimmtem String anfangen
Verfasst: Donnerstag 6. September 2007, 09:56
von Mister Wing
Hallo,
wie der Titel schon sagt.
Wie kann ich mir nur Dateien eines Ordners anzeigen lassen, die mit einem bestimmten literal anfangen?
Zum Beispiel:
auto_exec.bat
auto_foo.bat
auto_bar.bat
Die fangen alle mit auto an.
Vielen Dank.
Gruß Oliver
Verfasst: Donnerstag 6. September 2007, 10:12
von Rebecca
So bekommst du ein Verzeichnislisting und kannst den Anfang eines Strings pruefen:
Code: Alles auswählen
>>> import os
>>> os.listdir("/")
['boot', 'media', 'srv', 'mnt', 'var', 'proc', 'sbin', 'root', 'windows', 'vmlinuz', 'dev', 'lib', 'vmlinuz.old', 'sys', 'selinux', 'initrd', 'etc', 'usr', 'lost+found', 'initrd.img.old', 'opt', 'bin', 'initrd.img', 'cdrom', 'tmp', 'home']
>>> "hallo welt".startswith("ha")
True
>>>
Verfasst: Donnerstag 6. September 2007, 10:24
von Trundle
Files enthält dann eine Liste mit Pfadnamen, die mit 'auto' anfangen. Da können allerdings auch Verzeichnisse etc. dabei sein, wenn du nur Dateien haben willst, musst du eben etwas wie
Code: Alles auswählen
import glob
import os
files = [f for f in glob.glob('/pfad/zum/dir/auto*') if os.path.isfile(f)]
benutzen.
Verfasst: Donnerstag 6. September 2007, 12:00
von pyStyler
Hallo,
teste das hier mal.
Code: Alles auswählen
import os
print os.getcwd()
x = [ f for f in os.listdir(os.getcwd()) if f.startswith('auto_') and f.endswith('.bat')]
for i in x: print i
Gruss
pyStyler