Hallo,
Ich möchte unter Windows gerne eine Datei auf den Desktop schreiben.
Jetzt weiss ich aber nicht, wie dieser Pfad aussehen soll, da unter Windows der Pfad vom user abhängt.
Das heisst, man müsste irgendwie den momentanen User rausbekommen und dann den Pfad zusammenbasteln. Oder geht es noch besser?
Danke schon mal in Voraus,
Roman
Den Desktop Pfad rausbekommen (windows)
Ich weis nicht ob das funktioniert:
Martin
Code: Alles auswählen
import user
print user.home
es gibt dafür ein modul, das schhimpft sich os.path.
wenn du nun
eingibst, musst du mal kucken, wo du ankommst, weiß nicht, was unter windows als home-verzeichnis genommen wird.
wenn du nun
Code: Alles auswählen
ersterpfad = os.path.join("~","blabla")
tildeersetzer = os.path.expanduser (ersterpfad)
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi Roman!Roman hat geschrieben:Ich möchte unter Windows gerne eine Datei auf den Desktop schreiben.
Mit
os.environ.get("USERPROFILE")
oder
os.environ.get("ALLUSERSPROFILE")
bekommst du den Pfad zum Profil-Ordner heraus.
Normalerweise befindet sich darunter der "Desktop"-Ordner.
Es gibt noch andere Möglichkeiten, aber die kann ich jetzt nicht raus suchen, da ich kein Windows gebootet habe.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
also bei meiner möglichkeit einfach nur anstelle von blabla "desktop" eingeben und danach die datei, die du erstellen willst
Code: Alles auswählen
ersterpfad = os.path.join("~","desktop", "deinezuerstellendedatei")
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi!
So, ich habe das jetzt über eine Terminal-Sitzung geprüft.
Ergebnis:
Das was ich oben geschrieben habe stimmt nicht. Ich dachte zwar, dass der Desktop immer im Profil-Ordner ist, aber er ist immer im Home-Ordner. Somit ist die Lösung von "murph" nicht schlecht.
Falls du den Ordner doch über die Umgebungsvariablen raus finden möchtest, dann könnte das so funktionieren. (Das ist aber nur noch eine Zusatzinformation, da ich eher die Lösung von murph verwenden würde.)
Welche Umgebungsvariablen es noch so gibt, findest du in der Dos-Konsole mit dem Befehl "set" raus.
mfg
Gerold
So, ich habe das jetzt über eine Terminal-Sitzung geprüft.
Ergebnis:
Das was ich oben geschrieben habe stimmt nicht. Ich dachte zwar, dass der Desktop immer im Profil-Ordner ist, aber er ist immer im Home-Ordner. Somit ist die Lösung von "murph" nicht schlecht.
Falls du den Ordner doch über die Umgebungsvariablen raus finden möchtest, dann könnte das so funktionieren. (Das ist aber nur noch eine Zusatzinformation, da ich eher die Lösung von murph verwenden würde.)
Code: Alles auswählen
import os.path
os.path.expandvars("${HOMEDRIVE}${HOMEPATH}\\Desktop")
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
wenn du freundlich bist, nennst du das dann "Desktop", dann ist das auch unter Linux einsetzbar. Mit Mac habe ich keine Erfahrung...
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Viele Linux Distributionen verwenden "~/Desktop" als Desktoppfad. Das meint er damit. Weil Linux hat Case Sensitive Pfade, ergo ist desktop != DesktopRoman hat geschrieben:Hi Murph,
Was meinst du damit? Soll ich den Thread so nennen?
Funktioniert deine Lösung denn auch unter Linux? (Habe leider nur recht begrenzte Erfahrung mit Linux)
TUFKAB – the user formerly known as blackbird