Lesen Sie Systemumgebungsvariablen mit Python-Teil 2

Überblick

Wenden Sie Systemumgebungsvariablen mit Python-Teil 1 lesen an, um ein Python-Programm zu erstellen, das Systemumgebungsvariablen erfasst.

Verfassung

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.

Nächste Herausforderung

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

Lesen Sie Systemumgebungsvariablen mit Python-Teil 2
Umgebungsvariablen mit Lambda-Uploader einstellen
Shell-Variablen, Umgebungsvariablen
Python-Umgebung mit Docker-Compose
[Für Anfänger] Lesen Sie die DB-Authentifizierungsinformationen aus Umgebungsvariablen
Lesen Sie Excel mit openpyxl
Virtuelle Umgebung mit Python 3.6
Mongodb Zugang mit Pymongo
[Hinweis] Betreiben Sie MongoDB mit Python
Grundlagen zum Berühren von MongoDB mit MongoEngine
Bearbeiten von Strings mit Pandas gruppieren nach
Lesen Sie Systemumgebungsvariablen mit Python-Teil 1
Lesen Sie Systemumgebungsvariablen mit Python-Teil 2
Umgebungsvariablen bei Verwendung von Tkinter
Lesen Sie CSV mit Python-Pandas
Einfache toxische Umgebung mit Jenkins
Lesen Sie die Bildkoordinaten mit Python-matplotlib
Handle Go-Umgebungsvariablen (Viper)
Erstellen Sie eine Umgebung mit virtualenv
Minimale Konfigurations-Website-Umgebung mit Django
Installieren Sie die Python-Umgebung mit Anaconda
Verwalten Sie die Python-Umgebung mit virtualenv
Was sind Umgebungsvariablen? (Linux)
Venv Umgebung mit Windows Powershell
Behandeln Sie Umgebungsvariablen in Python
Erstellen Sie eine Python3-Umgebung mit Ubuntu 16.04
HTTP-Umgebungsvariablen in Flask
Bereiten Sie die Python3-Umgebung mit Docker vor
Erstellen Sie mit direnv eine Python-Umgebung
Präsentationsunterstützungssystem mit Python3
Wechseln Sie die virtuelle Umgebung mit Jupiter
Lesen von JSON-Daten mit Python