419
14.2
Das Modul os – die Schnittstelle zum Betriebssystem
Weil ich unter Windows arbeite, werden umgekehrte Schrägstriche verwendet (codiert
durch doppelte Schrägstriche).
Nur da, wo ein Schrägstrich fehlt, wird auch einer eingefügt.
14.2.6 Hintergrund: Umgebungsvariablen
Jedes Betriebssystem verwaltet eine Reihe von Umgebungsvariablen, die von verschiedenen
Programmen verwendet werden. Die Namen der Umgebungsvariablen bestehen aus gro-
ßen ASCII-Buchstaben, der Inhalt ist immer eine Zeichenkette. Für die Namen der Umge-
bungsvariablen gibt es internationale Konventionen (IEEE Std 1003.1-2001), die man
beachten sollte, wenn man neue Umgebungsvariablen definiert.
Die Variable
os.environ enthält ein Dictionary-artiges Objekt mit der Belegung aller
Umgebungsvariablen des Systems. Sein Inhalt ist natürlich bei jedem System anders.
Durch Zugriff auf dieses Dictionary können die Umgebungsvariablen gelesen und geändert
werden. Da sie aber auch von anderen Programmen genutzt werden, kann jede Änderung
zu Störungen führen.
>>> from os.path import join
>>> join("/python/projekt", "daten")
'/python/projekt\\daten'
Objekt Erklärung
environ
Dictionary mit Umgebungsvariablen
getenv(varname[,value])
Liefert den Wert der Umgebungsvariablen varname; falls
diese nicht existiert, wird der Wert
value zurückgegeben
(sofern er im optionalen zweiten Argument angegeben wor-
den ist).
putenv(varname, value)
Setzt die Umgebungsvariable varname auf einen neuen Wert
value (ein String).
Tabelle 14.9: Objekte im Modul os für die Verarbeitung von Umgebungsvariablen
>>> for i in os.environ: print(i, os.environ[i])
TMP C:\Users\Weigend\AppData\Local\Temp
COMPUTERNAME WEIGEND-PC
USERDOMAIN Weigend-PC
COMMONPROGRAMFILES C:\Program Files\Common Files
...
>>> os.environ['USERNAME']='Sandra Wegener'
>>> os.environ['USERNAME']
'Sandra Wegener'

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.