Elegante Möglichkeit, den Basisnamen des Verzeichnisses in Python zu übernehmen?

Ich habe mehrere Skripte, die als Eingabe einen Verzeichnisnamen verwenden, und mein Programm erstellt Dateien in diesen Verzeichnissen. Manchmal möchte ich den Basisnamen eines dem Programm zugewiesenen Verzeichnisses verwenden, um verschiedene Dateien im Verzeichnis zu erstellen. Beispielsweise

# directory name given by user via command-line
output_dir = "..." # obtained by OptParser, for example
my_filename = output_dir + '/' + os.path.basename(output_dir) + '.my_program_output'
# write stuff to my_filename

Das Problem ist, dass, wenn der Benutzer einen Verzeichnisnamen mit einem abschließenden Schrägstrich angibt, os.path.basename die leere Zeichenfolge zurückgibt, was ich nicht möchte. Was ist der eleganteste Weg, um mit diesen Schrägstrichen / abschließenden Schrägstrichen in Python umzugehen? Ich weiß, dass ich manuell nach dem Schrägstrich am Ende von output_dir suchen und ihn entfernen kann, wenn er vorhanden ist, aber es scheint, als gäbe es einen besseren Weg. Gibt es

Auch ist es in Ordnung, '/' Zeichen manuell hinzuzufügen? Z.B. output_dir + '/' os.path.basename () oder gibt es eine allgemeinere Möglichkeit, Pfade zu erstellen?

Vielen Dank

Antworten auf die Frage(5)

Ihre Antwort auf die Frage