Datei öffnen, anhand der Dateiendung

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
andreaszdw
User
Beiträge: 24
Registriert: Donnerstag 12. Oktober 2006, 07:28

Hallo,

ich will aus einem Python-Programm eine Datei öffnen, z. B Bild.jpg.

Wie kann ich jetzt das dem Dateityp zugeordnete Programm starten und das o. g. Bild anzeigen lassen?

MfG
Andreas
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

andreaszdw hat geschrieben:Wie kann ich jetzt das dem Dateityp zugeordnete Programm starten
Hi Andreas!

Willkommen im Python-Forum!

Unter Windows --> mit os.startfile()

mfg
gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
SigMA
User
Beiträge: 181
Registriert: Sonntag 4. April 2004, 13:27
Wohnort: Freiburg
Kontaktdaten:

Naja ich glaube eher er meint, wie er herraus bekommt was für ein Dateityp es ist um dann das richtige zu starten.

Es gibt 2 Möglichkeiten.

1: Entweder du nimmst dir einfach die letzten 3 Zeichen einer Datei (Nach Windows Standart die Dateiendung) und schaust dann nach was das ist.

2: Du benutzt das Module mimetypes

Code: Alles auswählen

import mimetypes
print mimetypes.guess_type("id3reader.py")
# Ausgabe: ('text/x-python', None)
mfg
SigMA
Leichtdio.de - Das Kreativ-Blog
http://www.leichtdio.de
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

andreaszdw hat geschrieben:..Wie kann ich jetzt das dem Dateityp zugeordnete Programm starten und das o. g. Bild anzeigen lassen?...
mit gerolds os.starfile() wird das am ehesten funktionieren.

Aber der mimetypes Hinweis ist eine gute Information, wenn es um die Arbeit mit Dateiendungen geht (z.B. wenn man eventuell die Applikation oder gar das Icon der verarbeitenden Applikation für eine Dateiendung ermitteln möchte).
Antworten