Wenden Sie Systemumgebungsvariablen mit Python-Teil 1 lesen an, um ein Python-Programm zu erstellen, das Systemumgebungsvariablen erfasst.
EnvironWrapper.py
import os
class EnvironWrapper:
"""
class:EnvironWrapper
Überblick:Eine Klasse, die Startparameter enthält, die aus Umgebungsvariablen gelesen wurden
"""
#Umgebungsvariable
defaultenv_context = {
"SECRET_KEY" : 'naishokey', # SECRET_KEY
"DEBUG_FLG" : 'true', # DEBUG_FLG
"ALLOWED_HOSTS" : None, # ALLOWED_HOSTS
}
#Umgebungsvariable
getenv_context = {}
def __init__(self):
"""
Konstrukteur
os.Lesen Sie Umgebungsvariablen aus der Umgebung
"""
for key, value in self.defaultenv_context.items():
param = os.getenv(key, default=value)
if key == "DEBUG_FLG" :
param = False if param.lower().startswith('false') else True
self.getenv_context[key] = param
def GetParams(self, key : str) -> object:
"""
GetParams:Erfassungsprozess für Umgebungsvariablen
Arguments:
key {str} --Umgebungsvariablenschlüssel
Returns:
object --Wert der Umgebungsvariablen
"""
return self.getenv_context[key]
if __name__ == "__main__":
env = EnvironWrapper()
for key, value in env.getenv_context.items():
print(f"key:{key}, value:{value}")
Systemumgebungsvariablen enthalten auch persistente Daten wie% USERNAME% für Windows, und ich möchte sie nur auf die Systemumgebungsvariablen beschränken, die ich benötige.
Definieren Sie die in defaultenv_context
verwendeten Systemumgebungsvariablen und ihre Standardwerte und speichern Sie die erforderlichen Systemumgebungsvariablen in getenv_context als Wörterbuch.
Da os.environ
in erster Linie ein Wörterbuchtyp ist, wird es als Wrapper-Klasse von Environ bezeichnet.
EnvironWrapperRun.bat
@ECHO OFF
ECHO <Eingabewert>
Lesen Sie die REM-Konfigurationsdatei
FOR /F "usebackq delims== tokens=1,2" %%i IN ("setting.ini") do (
SET %%i=%%j
SET %%i
)
ECHO:
ECHO <erworbener Wert>
python EnvironWrapper.py
EnvironWrapperRun.sh
#!/bin/bash
#Einstellungsdatei lesen
echo <Eingabewert>
while read line
do
export $line
echo $line
done < setting.ini
Echo <erfasster Wert>
python3 EnvironWrapper.py
setting.ini
SECRET_KEY=1234567890qwertyuiopasdfghjklzxcvbnm
DEBUG_FLG=True
ALLOWED_HOSTS=127.0.0.1
Die diesmal festgelegten Systemumgebungsvariablen werden in der Datei settings.ini zusammengefasst, sodass sie nicht vom Betriebssystem abhängen. Da die Verwendung von Systemumgebungsvariablen je nach Betriebssystem unterschiedlich ist, werden die Startdateien getrennt. Lesen Sie die Datei settings.ini Zeile für Zeile in der Startdatei, legen Sie sie in der Systemumgebungsvariablen fest und führen Sie dann das Python-Programm aus.
Wie Sie dem Inhalt von settings.ini entnehmen können, sind die in Djangos Einstellung.py verwendeten Einstellungswerte definiert. Stellen Sie sich einen Mechanismus vor, der DI beim Start gemäß dem Entwicklungsstatus (Develop-Staging-Release) des Einstellungswerts von settings.py ermöglicht.
Recommended Posts