```python # Пример куска программы: from django.conf import settings def webhook(request): ''' Обработчик вебхука от платежной системы ''' api_token = settigs.MY_API_KEY # ключ берем из файла settings.py add_mailchimp_email_with_tag(email=request.POST.get('email', audience_name='DONATES', tag='DONATE') ``` ==`vim config/settings.py`== ```sh #.......... MY_API_KEY = os.getenv('MY_API_KEY') #.......... ``` ### Уровни переменных окружения: ##### - OS (операционная система) ```sh sudo vim /etc/environment #-------------- THIRD_VAR="123" # будет видна после перезагрузки ``` ##### - USER (пользователь) ```sh vim ~/.bashrc #-------------- export USER_VAR=123 # exit echo $USER_VAR ``` ##### - SESSION (сессия) ```sh export SESSION_VAR=777 echo $SESSION_VAR # после выхода из сессии переменная пропадает ``` ##### - APPLICATION (приложение) ```sh vim setenv.sh #-------------- #!bash/bin/env python3 export VAR1=123 export VAR1=12345 export VAR1=123567hbkjbjk #-------------- # запустим скрипт: . ./setenv.sh # или source ./setenv.sh # Также можно сразу запускать приложение с установкой переменных, > PYTHON_ENV=123 VAR=435 VAR2=jfhfg3 python testenv.py ``` ```python # Использование модуля < python-dotenv > pip install python-dotenv nvim .env API_KEY='my_secret_key' # Сразу добавляем этот файл в .gitignore !!! # Программа: from dotenv import load_dotenv load_dotenv() key = os.getenv('API_KEY') print(key) #################### # Скрытие пароля при вводе: from getpass import getpass import pyAesCrypt password = getpass(promt='Пароль для расшифровки') pyAesCrypt.decryptFile( "secret_data.aes", "secret_data.txt", password ) ```