Dateien umbenennen in "Teil vom Dateinamen.mp3"

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
dete38
User
Beiträge: 6
Registriert: Mittwoch 26. September 2018, 08:54

Moin Experten,

gibt es einen Trick, wie man, lange Dateinamen wie
12_Das ist der Hinweis auf den Dateiinhalt.mp3
so umwandeln kann, daß 12.mp3 herauskommt?
Bei Excel ist es der Befehl "links ....,2(Stellen) ..."
Das müßte natürlich automatisch ablaufen.
Wenn das nicht möglich ist, würde ich die in den mp3-
Dateien eingebauten Mediainformationen nutzen.
Benutzeravatar
noisefloor
User
Beiträge: 4187
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

also zum einem gibt es diverse Tools, die Dateinamen von Schema X nach Schema Y umbenennen können.

Wenn du es mit einem Python machen willst, dann lauten die Stichworte entweder "slicing" einer Sequenz (dazu gehören auch Strings) oder regular expression (für komplexere Anwendungsfälle).

Gruß, noisefloor
Sirius3
User
Beiträge: 18268
Registriert: Sonntag 21. Oktober 2012, 17:20

Das Stichwort heißt, Stringverarbeitung, kommt in jedem Anfängertutorial zu Python vor und im konkreten Fall ist das eine Kombination aus str.split und os.path.splitext.
dete38
User
Beiträge: 6
Registriert: Mittwoch 26. September 2018, 08:54

Moin noisefloor,

ja, das soll mit Python erledigt werden. Herzlichen Dank für die Tips.
Du kennst Dich wirklich gut aus !!!
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

dete38 hat geschrieben: Freitag 21. Dezember 2018, 11:19 gibt es einen Trick, wie man, lange Dateinamen wie
12_Das ist der Hinweis auf den Dateiinhalt.mp3
so umwandeln kann, daß 12.mp3 herauskommt?
Das ist kein Trick, das sind Grundlagen.

Wenn es sich immer um zwei Zeichen handelt, dann geht es wie folgt

Code: Alles auswählen

>>> '12_Das ist der Hinweis auf den Dateiinhalt.mp3'[:2]
'12'
Wenn der Unterstrich das Kriterium ist, dann kannst du den String auch einfach am Unterstrich zerlegen und dann das erste Element aus der resultierenden Liste nehmen.

Code: Alles auswählen

>>> '12_Das ist der Hinweis auf den Dateiinhalt.mp3'.split('_')
['12', 'Das ist der Hinweis auf den Dateiinhalt.mp3']
Benutzeravatar
__blackjack__
User
Beiträge: 14036
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Falls der erste Unterstrich das Kriterium ist, würde ich noch die maximale Anzahl der Teile beim `split()` angeben.

Alternativ könnte man noch nach der Position des ersten Unterstrichs suchen und die für's slicing verwenden:

Code: Alles auswählen

In [6]: filename
Out[6]: '12_Das ist der Hinweis auf den Dateiinhalt.mp3'

In [7]: filename[:filename.index('_')]
Out[7]: '12'
„A life is like a garden. Perfect moments can be had, but not preserved, except in memory. LLAP” — Leonard Nimoy's last tweet.
Antworten