Saya set variabel lingkungan yang ingin saya akses di aplikasi Python. Bagaimana cara mendapatkan nilai ini?
Variabel-variabel lingkungan yang diakses melalui os.environ
import os
print(os.environ['HOME'])
Atau anda bisa melihat daftar dari semua variabel lingkungan menggunakan:
os.environ
Karena kadang-kadang anda mungkin perlu untuk melihat daftar lengkap!
# using get will return `None` if a key is not present rather than raise a `KeyError`
print(os.environ.get('KEY_THAT_MIGHT_EXIST'))
# os.getenv is equivalent, and can also give a default value instead of `None`
print(os.getenv('KEY_THAT_MIGHT_EXIST', default_value))
Python instalasi default pada Jendela C:\Python
. Jika anda ingin mengetahui saat menjalankan python yang dapat anda lakukan:
import sys
print(sys.prefix)
Untuk memeriksa apakah ada kunci (mengembalikan True
atau False
)
'HOME' in os.environ
Anda juga dapat menggunakan get()
ketika mencetak kunci; berguna jika anda ingin menggunakan default.
print(os.environ.get('HOME', '/home/username/'))
di mana /home/username/
default
Pertanyaan awal (bagian pertama) adalah "bagaimana untuk memeriksa lingkungan variabel dalam Python."
Berikut ini's bagaimana untuk memeriksa apakah $FOO adalah set:
try:
os.environ["FOO"]
except KeyError:
print "Please set the environment variable FOO"
sys.exit(1)
Anda dapat mengakses variabel lingkungan menggunakan
import os
print os.environ
Cobalah untuk melihat isi dari PYTHONPATH atau PYTHONHOME variabel lingkungan, mungkin ini akan bermanfaat untuk pertanyaan kedua anda. Namun anda harus menjelaskan hal itu.
Sebenarnya hal itu dapat dilakukan saat ini:
import os
for item, value in os.environ.items():
print('{}: {}'.format(item, value))
Atau hanya:
for i, j in os.environ.items():
print(i, j)
Untuk melihat nilai dalam parameter:
print(os.environ['HOME'])
Atau:
print(os.environ.get('HOME')
Untuk menetapkan nilai:
os.environ['HOME'] = '/new/value'
Jika anda berencana untuk menggunakan kode produksi kode aplikasi web, menggunakan web framework seperti Django/Labu, menggunakan proyek-proyek seperti envparse, dengan ini anda dapat membaca nilai anda ditentukan jenis.
from envparse import env
# will read WHITE_LIST=hello,world,hi to white_list = ["hello", "world", "hi"]
white_list = env.list("WHITE_LIST", default=[])
# Perfect for reading boolean
DEBUG = env.bool("DEBUG", default=False)
CATATAN: kennethreitz's autoenv adalah alat yang direkomendasikan untuk membuat proyek tertentu variabel lingkungan, perlu diketahui bahwa mereka yang menggunakan autoenv
perlu .env
file pribadi (tidak dapat diakses untuk umum)
Ada's juga sejumlah besar perpustakaan. Envs misalnya akan memungkinkan anda untuk mengurai benda-benda yang keluar dari variabel lingkungan anda, yang adalah rad. Misalnya:
from envs import env
env('SECRET_KEY') # 'your_secret_key_here'
env('SERVER_NAMES',var_type='list') #['your', 'list', 'here']