Setzen Sie eine Linux-Umgebungsvariable in Python zurück

Abid Ullah 21 Juni 2023
  1. Setzen Sie eine Linux-Umgebungsvariable in Python zurück
  2. Möglichkeiten zum Zurücksetzen einer Linux-Umgebungsvariablen in Python
Setzen Sie eine Linux-Umgebungsvariable in Python zurück

In diesem Artikel lernen wir verschiedene Möglichkeiten kennen, eine Linux-Umgebungsvariable in Python zurückzusetzen. Die hilfreichste Methode ist die Verwendung des Befehls unset.

Wir können jedoch mehrere andere Möglichkeiten verwenden, um eine Linux-Umgebungsvariable in Python zurückzusetzen. Lesen Sie den Artikel, um mehr zu erfahren.

Setzen Sie eine Linux-Umgebungsvariable in Python zurück

Python funktioniert mit verschiedenen Betriebssystemen (OS). Linux ist eines der Betriebssysteme, auf denen Python verwendet werden kann.

Obwohl wir sowohl Linux als auch Python verwenden können, gibt es einige Unterschiede zwischen den beiden. Einer der Unterschiede, die wir berücksichtigen müssen, ist die Interpretation von Umgebungsvariablen.

Wir können die Methode os.unsetenv() in Python verwenden, wenn wir eine zuvor festgelegte Umgebungsvariable zurücksetzen möchten.

Diese Funktion entfernt die Umgebungsvariable aus dem aktuellen Prozess und akzeptiert den Namen der Umgebungsvariablen als Argument. Außerdem löscht die Funktion die Umgebungsvariable aus dem aktuellen Prozess.

Daher ist es wichtig, daran zu denken, dass das Zurücksetzen einer Shell-Umgebungsvariable mit Python den Wert nicht aus der Shell entfernt. Wenn die Umgebungsvariable in der Shell festgelegt ist, haben die untergeordneten Prozesse von Python weiterhin Zugriff darauf, selbst wenn sie nach dem Python-Prozess gestartet wurden.

Der Befehl unset sollte verwendet werden, wenn Sie eine Umgebungsvariable aus der Shell löschen möchten.

Möglichkeiten zum Zurücksetzen einer Linux-Umgebungsvariablen in Python

Python bietet viele Optionen zum Entfernen und Zurücksetzen eines Werts aus einer Umgebungsvariablen unter Linux in Python.

  1. Die Verwendung des unset-Befehls ist der typischste und gebräuchlichste Ansatz. Mit diesem Befehl wird die Umgebungsvariable aus der jetzt aktiven Shell entfernt.
  2. Pythons export-Befehl bietet eine zusätzliche Methode zum Löschen einer zuvor gesetzten Linux-Umgebungsvariable. Dieser Befehl entfernt die Umgebungsvariable aus der aktiven Shell und allen untergeordneten Prozessen.
  3. Schließlich besteht eine weitere Möglichkeit darin, die Technik os.environ.pop zu nutzen. Nach Ausführung dieser Methode wird die Umgebungsvariable aus dem Wörterbuch os.environ entfernt.

Die Strategie, die wir wählen, basiert auf den Anforderungen, die wir haben.

  1. Den Befehl unset würden wir verwenden, wenn wir die Umgebungsvariable aus der Shell löschen möchten, in der wir jetzt arbeiten.
  2. Den Befehl export würden wir verwenden, wenn wir die Umgebungsvariable aus der derzeit aktiven Shell und allen untergeordneten Prozessen löschen möchten.
  3. Wir verwenden die Funktion os.environ.pop, wenn wir nur die Umgebungsvariable aus dem Dictionary os.environ löschen wollen.

Verwenden Sie os.environ, um eine der Umgebungsvariablen zu löschen oder zurückzusetzen

Bei der Arbeit mit Python unter Linux müssen wir möglicherweise eine der Umgebungsvariablen löschen oder zurücksetzen.

Wenn wir beispielsweise die Umgebungsvariable PYTHONPATH so konfiguriert haben, dass sie auf einen bestimmten Ort zeigt, und wir diese Einstellung jetzt löschen möchten, können wir den im folgenden Beispiel bereitgestellten Code verwenden.

# import os library
import os

# Unset the path with the command
os.environ.pop("PYTHONPATH", None)

Diese Aktion entfernt die Umgebungsvariable PYTHONPATH aus dem Wörterbuch os.environ. In diesem Fall passiert nichts, wenn die Umgebungsvariable nicht gesetzt wurde.

Verwenden Sie del os.environ, um eine der Umgebungsvariablen zurückzusetzen

Wir können auch die Option verwenden, den unten dargestellten Code zu verwenden, um eine Umgebungsvariable zu löschen.

# import operating system
import os

# use this command to unset
del os.environ["PYTHONPATH"]

Ausgang:

KeyError                                  Traceback (most recent call last)
KeyError: 'PYTHONPATH'

Diese Aktion entfernt die Umgebungsvariable PYTHONPATH aus dem Wörterbuch os.environ. Dies führt zu einem KeyError, wenn die Umgebungsvariable nicht gesetzt ist.

Verwenden Sie os.environ.unsetenv und os.environ, um Variablen zu löschen und zu ersetzen

Wenn wir den Wert, der der Variable USER zugewiesen wurde, löschen und durch das Wort nobody ersetzen wollen, gehen Sie wie folgt vor:

import os

os.environ.unsetenv("USER")
os.environ["USER"] = "nobody"

Der obige Code verdeutlicht den der Variablen USER zugewiesenen Wert und ersetzt ihn durch das Wort nobody.

Verwenden Sie os.environ.unsetenv zum Unset

Wir können den zweiten Parameter weglassen, wenn wir nur den Wert der Variablen löschen wollen. Beispielsweise würde die Variable USER nicht gesetzt, wenn Sie Folgendes tun würden.

import os

os.environ.unsetenv("USER")

Der obige Code löscht den Wert der Variablen. Die Variable USER würde nicht gesetzt werden.

Verwenden Sie os.environ.get(), um zu prüfen, ob eine Variable gesetzt ist, bevor Sie die Einstellung aufheben

Das Überprüfen, ob eine Variable gesetzt wurde, bevor sie zurückgesetzt wird, kann auch mit Hilfe der Funktion os.environ.get() durchgeführt werden. Wenn Sie eine Variable nur zurücksetzen möchten, wenn sie gerade gesetzt ist, können Sie dies zu Ihrem Vorteil nutzen.

Folgendes würde beispielsweise den Wert der Variable USER nur dann entfernen, wenn sie bereits als nobody definiert war.

Beispielcode:

import os

if os.environ.get("USER") == "nobody":
    os.environ.unsetenv("USER")

Wie wir bereits wissen, bedeutet das Löschen des Werts einer Variablen nicht immer, dass sie aus der Umgebung entfernt wird. Es erreicht nichts anderes, als den Wert auf eine leere Zeichenfolge zu setzen.

Sie können die Funktion os.environ.pop() verwenden, wenn Sie eine Variable vollständig aus der Umgebung entfernen möchten. Diese Funktion entfernt die Variable aus der Umgebung und gibt den Wert zurück, den sie hatte, bevor sie entfernt wurde.

Beispielcode:

import os

prev_value = os.environ.pop("USER", None)
print(prev_value)  # prints "nobody"

Ausgang:

nobody

Dieser Code entfernt die Variable USER aus der Umgebung und gibt den Wert zurück, der dort war, bevor er entfernt wurde.

Wir hoffen, dass Sie diesen Python-Artikel hilfreich finden, um zu verstehen, wie Sie eine Linux-Umgebungsvariable in Python zurücksetzen können.

Autor: Abid Ullah
Abid Ullah avatar Abid Ullah avatar

My name is Abid Ullah, and I am a software engineer. I love writing articles on programming, and my favorite topics are Python, PHP, JavaScript, and Linux. I tend to provide solutions to people in programming problems through my articles. I believe that I can bring a lot to you with my skills, experience, and qualification in technical writing.

LinkedIn

Verwandter Artikel - Python Environment Variable