ich wollte mir ein kleines Python-Skript zusammentippen, dass mir alle Umlaute in den Dateinamen eines Verzeichnis umwandelt (also z. Bsp. "blöd.py" -> "bloed.py"). Eigentlich dachte ich, dass das ja eine ganz einfache Aufgabe ist, aber leider funktioniert mein kurzer Code (der erstmal nur die Dateinamen mit Umlauten auflisten soll) nicht:
Code: Alles auswählen
#! /usr/bin/env python
# coding: utf-8
import sys, os, re
def main():
if len(sys.argv) > 1:
pfad = sys.argv[1]
else:
pfad = os.getcwd()
print "Suche Dateien und Verzeichnisse mit Umlauten in", pfad
liste = os.listdir(pfad)
for n in liste:
umlaute = 0
filename = unicode (n)
# RegEx findet keinen Match
match = re.search("[äöüÄÖÜß]", filename)
if match <> None:
print filename, match
# Alternative bricht wegen UnicodeDecodeError ab
for c in filename:
if c in "äöüÄÖÜß":
print filename
main()
Was mach ich falsch???