über eine shell eine Umgebungsvariabel einführen

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
max793
User
Beiträge: 58
Registriert: Montag 11. Mai 2009, 10:05

Hallo

würde gene wissen wie man mit einer umgebungsvariable die man in der Shell definiert hat umgeht.

Ich definiere in shell eine Variable mit dem namen PFAD und will nun das Python diesen einlest und mit diesem weiterarbeitet und wie im anschluss einen Pfad zusammensetzt.

Set PFAD = C:\test

Code: Alles auswählen


import os

pfad = os.environ("PFAD")
def solver_file(pfad):
    writeFile = open("pfad" + "\car.txt", "w")
    writeFile.write("1")
    writeFile.close()

jedoch klappt das noch nicht so wie ich es mir wünsche und bekomm immer eine Fehlermeldung der art

File "C:\opt\test2.py", line 10, in ?
pfad = os.environ("PFAD")
AttributeError: _Environ instance has no __call__ method

was ist hier falsch?

Danke
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Da es keine `__call__()`-Methode hat, kannst du es auch nicht mittels `()` aufrufen. Mach doch mal einfach ein `os.environ` ohne Klammern, so wie's auch in der Doku steht. Da steht übrigens auch (im zweiten Satz), wie man auf einzelne Umgebungsvariablen zugreift. Immer erst Doku lesen, dann fragen. ;)
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Code: Alles auswählen

>>> os.path.expandvars(os.path.join("home", "rbreu", "$BROWSER"))
'home/rbreu/epiphany'
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

max793 hat geschrieben: pfad = os.environ("PFAD")
AttributeError: _Environ instance has no __call__ method
was ist hier falsch?
Na was wohl...
Antworten