Rumah > Artikel > pembangunan bahagian belakang > Akses nilai pembolehubah persekitaran dalam Python
Pembolehubah persekitaran dalam Python ialah nilai konfigurasi yang disimpan di luar kod dan digunakan oleh aplikasi semasa runtime. Pembolehubah ini wujud sebagai pasangan nilai kunci, sama seperti kamus dalam Python. Pembolehubah ini boleh ditetapkan, dikemas kini atau dipadamkan dalam fail konfigurasi tanpa mengubah kod aplikasi. Python menyediakan beberapa fungsi sistem pengendalian untuk mengakses pembolehubah persekitaran tanpa menjejaskan kod aplikasi. Dalam artikel ini, kita akan belajar cara mengakses pembolehubah persekitaran dalam Python.
Untuk berinteraksi dengan sistem pengendalian, python mempunyai modul os dengan bantuan yang mana anda boleh berinteraksi dengan sistem pengendalian dan mengakses pembolehubah persekitaran. Kamus os.environ mengandungi semua pembolehubah persekitaran dalam pasangan nilai kunci.
Kita boleh menggunakan os.environ untuk mengakses laluan ke pembolehubah persekitaran serta sebarang nilai pembolehubah persekitaran baharu.
import os # get the value of the PATH environment variable path = os.environ['PATH'] print(path) # set a new environment variable os.environ['MY_VAR'] = 'my value' # get the value of the new environment variable my_var = os.environ['MY_VAR'] print(my_var)
/opt/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/tools/node/bin:/tools/google-cloud-sdk/bin my value
Kod tersebut menimbulkan ralat kritikal jika pembolehubah persekitaran tidak ditemui. Untuk mengelakkan ralat sedemikian, kita boleh menggunakan fungsi os.environ.get() untuk mengakses pembolehubah persekitaran dan mengelakkan ralat utama apabila kunci tidak ditemui.
import os # get the value of the MY_VAR environment variable, or return None my_var = os.environ.get('MY_VAR') print(my_var)
None
Dalam industri, kami menggunakan persekitaran yang berbeza untuk pembangunan, pementasan dan asas kod pengeluaran. Terdapat fail pembolehubah persekitaran yang berasingan untuk setiap persekitaran. Dotenv ialah perpustakaan pihak ketiga untuk mengakses pembolehubah persekitaran dalam berbilang persekitaran.
Untuk menggunakan modul dotenv, kita perlu memasang python-dotenv terlebih dahulu melalui arahan berikut
pip install python-dotenv
Pip ialah pengurus pakej python. Pip install python-dotenv Memasang modul dotenv ke dalam sistem fail tempatan.
Selepas memasang modul python-dotenv, kami perlu mencipta fail .env dalam direktori akar projek dan mencipta nilai persekitaran di dalamnya sebagai pasangan nilai kunci.
MY_KEY_VAR=my_value
MY_KEY_VAR ialah kunci pembolehubah persekitaran, my_value ialah nilai yang sepadan.
Kini, kami boleh memuatkan fail .env ke dalam kod Python kami di mana sahaja diperlukan menggunakan fungsi dotenv.load_dotenv(), yang membaca fail .env dan memuatkan semua pembolehubah persekitaran ke dalam modul os.environ.
from dotenv import load_dotenv import os # load the environment variables from the .env file load_dotenv() # get the value of the MY_VAR environment variable my_var = os.environ['MY_KEY_VAR'] print(my_var)
my_value
argparse ialah perpustakaan standard dalam Python untuk menghuraikan argumen baris arahan. Kita boleh menghantar pembolehubah persekitaran sebagai argumen baris arahan dalam Python menggunakan perpustakaan argparse.
Tentukan hujah baris arahan untuk setiap pembolehubah persekitaran yang ingin kita lalui.
Kemudian gunakan objek args yang dikembalikan oleh argparse untuk mengakses pembolehubah persekitaran.
Pas pembolehubah persekitaran dan nilainya semasa menjalankan fail.
import argparse parser = argparse.ArgumentParser() parser.add_argument('--my-var') args = parser.parse_args() my_var = args.my_var print(my_var)
None
Apabila menjalankan fail di atas, kita perlu menghantar nilai persekitaran dengan nama kunci.
python script.py --my-var "my value"
Apabila kita melepasi pilihan –my-var dan nilainya “nilai saya” dalam baris arahan, kaedah parse_args() modul argparse menghuraikan pilihan dan mendapat nilainya, iaitu “nilai_saya” .
Configuration Parser ialah perpustakaan Python untuk membaca fail konfigurasi dalam aplikasi Python.
Untuk menggunakan modul parser konfigurasi kita mesti
Buat fail konfigurasi dan isytiharkan pembolehubah persekitaran seperti yang diperlukan dalam bentuk pasangan nilai kunci untuk setiap bahagian (seperti pembangunan, pengeluaran dan pementasan).
Gunakan fungsi os.getenv() dalam fail Python untuk mengakses persekitaran semasa.
Dalam fail Python yang perlu mengakses pembolehubah persekitaran, kita boleh menggunakan modul ConfigParser untuk mengakses pembolehubah persekitaran persekitaran semasa.
[development] MY_VAR=my value [production] MY_VAR=another value import configparser import os # get the current environment env = os.getenv('ENVIRONMENT', 'development') # read the configuration file config = configparser.ConfigParser() config.read('config.ini') # get the value of the MY_VAR environment variable for the current environment my_var = config.get(env, 'MY_VAR') print(my_var)
Dalam artikel ini, kami meneroka cara yang berbeza untuk mengakses pembolehubah persekitaran dalam fail Python. Kami mempelajari cara mengakses pembolehubah persekitaran menggunakan modul os, cara mengakses pembolehubah persekitaran merentas berbilang persekitaran menggunakan perpustakaan dotenv, cara menghantar pembolehubah persekitaran sebagai argumen baris arahan menggunakan modul argparse dan cara menggunakan ConfigParser modul Akses pembolehubah persekitaran semasa dari pelbagai persekitaran.
Atas ialah kandungan terperinci Akses nilai pembolehubah persekitaran dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!