In Python wird man hin und wieder mit Zugangsdaten — beispielsweise API-Schlüsseln oder Datenbank-Passwörtern — konfrontiert. Solche Daten kann man in den Code schreiben, eine gute Idee ist es jedoch nicht. Vielmehr sollte man stets darauf achten, Zugangsdaten und etwaige Konfigurationen vom Code zu trennen.
In Python gibt es für diesen Zweck eine Bibliothek, die den Namen dotenv trägt und mit pip installiert werden kann:
pip install python-dotenvDie Zugangsdaten werden in einer Datei mit der Bezeichnung .env gespeichert (Punkt nicht vergessen); sie könnte folgendermaßen aussehen:
username=julia
password=gr5TDq22?nJAeMrrWie ihr dem Beispiel entnehmen könnt, dürfen keine Leerzeichen und keine Anführungszeichen verwendet werden. Die Datei .env speichert ihr in jenem Verzeicnis ab, in dem sich die Python-Datei befindet, in der die Zugangsdaten verwendet werden sollen.
├── git
├── .gitignore
├── pyproject.toml
├── README.md
├── requirements.txt
├── src
│ ├── __init__.py
│ ├── .env
│ └── main.pyIm Programmcode könnt ihr dann wie folgt auf die Daten zugreifen:
import os
from dotenv import load_dotenv
load_dotenv()
def main() -> None:
username = os.getenv("username")
password = os.getenv("password")
print(f"Benutzername: {username}")
print(f"Passwort: {password}")
if __name__ == "__main__":
main()Mit load_dotenv() werden die Zugangsdaten im Programm verfügbar, d.h. sie können über das Modul os abgerufen werden. Daher ist es erforderlich, os ebenfalls zu importieren.
Die Zugangsdaten aus der Datei .env werden in diesem Beispiel den Variablen username und password zugewiesen und anschließend mit print() ausgegeben.
Ihr solltet daran denken, die Datei .env in die Datei .gitignore aufzunehmen, um zu verhindern, dass sie in ein öffentliches Repository übertragen wird (und damit für jeden einsehbar ist).