Ich habe eine Zeichenfolge, die ich als Dateinamen verwenden möchte, daher möchte ich mit Python alle Zeichen entfernen, die in Dateinamen nicht zulässig sind.
Ich bin lieber streng als sonst, also sagen wir, ich möchte nur Buchstaben, Ziffern und eine kleine Menge anderer Zeichen wie behalten "_-.() "
. Was ist die eleganteste Lösung?
Der Dateiname muss auf mehreren Betriebssystemen (Windows, Linux und Mac OS) gültig sein. Es handelt sich um eine MP3-Datei in meiner Bibliothek mit dem Songtitel als Dateiname, die von drei Computern gemeinsam genutzt und gesichert wird.
os.path
lädt je nach Betriebssystem tatsächlich eine andere Bibliothek (siehe den zweiten Hinweis in der Dokumentation ). Wenn also eine os.path
Anführungszeichenfunktion implementiert wurde , konnte die Zeichenfolge nur für die POSIX-Sicherheit beim Ausführen auf einem POSIX-System oder für die Windows-Sicherheit beim Ausführen unter Windows angegeben werden. Der resultierende Dateiname wäre nicht unbedingt sowohl für Windows als auch für POSIX gültig, was in der Frage gefordert wird.