.env.python.local -
What is .env.python.local?
.env.python.local is a environment-specific configuration file used primarily in Python projects (often with Django, Flask, or other frameworks using python-dotenv or django-environ). It stores environment variables for a local development environment, overriding settings in generic .env files.
1. Switching Between SQLite and Postgres Locally
.env (committed):
DATABASE_URL=sqlite:///local.db
DEBUG=False
API_BASE_URL=https://api.example.com
.env.python.local (gitignored):
# Override only for performance testing
DATABASE_URL=postgresql://user:pass@localhost:5432/perf_test
DEBUG=True
2. Never commit real secrets
Even test credentials should be rotated if accidentally leaked. .env.python.local
Load .env.python.local first (precedence)
load_dotenv('.env.python.local', override=True) What is
File Structure & Syntax
# .env.python.local – Example for a Django project
Precedence & Override Behavior
When multiple .env files exist, the last loaded file with override=True wins. .env.python.local
Typical load order in many projects:
.env – default/shared config
.env.python – Python-specific defaults
.env.python.local – Your local overrides (highest priority)