🍺 BREW Explorer

← all formulae

python@3.12

brew install python@3.12 v3.12.13_4 Python-2.0

Python 3.12 — interpreted language runtime with standard library, package manager, and REPL.

Why you might care

Install Python 3.12 specifically when you need that minor version for projects with strict version constraints or to test compatibility. Homebrew's versioned Python formulae let you run multiple minor versions side-by-side without managing pyenv or other version managers. Comes with pip and venv for package and environment management.

Categories

Alternatives

pyenv asdf python@3.11 python@3.13
69.1k
30-day installs · #77
202.7k
90-day · #98
759.8k
365-day · #85

Runtime dependencies

Build dependencies

Links

Caveats

Python is installed as
  $HOMEBREW_PREFIX/bin/python3.12

Unversioned and major-versioned symlinks `python`, `python3`, `python-config`, `python3-config`, `pip`, `pip3`, etc. pointing to
`python3.12`, `python3.12-config`, `pip3.12` etc., respectively, are installed into
  $HOMEBREW_PREFIX/opt/python@3.12/libexec/bin

If you do not need a specific version of Python, and always want Homebrew's `python3` in your PATH:
  brew install python3

`idle3.12` requires tkinter, which is available separately:
  brew install python-tk@3.12

`dbm.gnu` is available separately:
  brew install python-gdbm@3.12

For more information about Homebrew and Python, see: https://docs.brew.sh/Homebrew-and-Python

Blurb generated by claude-haiku-4-5 on today.

Raw metadata
{
  "aliases": [],
  "alternatives": [
    "pyenv",
    "asdf",
    "python@3.11",
    "python@3.13"
  ],
  "build_dependencies": [
    "pkgconf"
  ],
  "categories": [
    "language-runtime",
    "interpreter"
  ],
  "caveats": "Python is installed as\n  $HOMEBREW_PREFIX/bin/python3.12\n\nUnversioned and major-versioned symlinks `python`, `python3`, `python-config`, `python3-config`, `pip`, `pip3`, etc. pointing to\n`python3.12`, `python3.12-config`, `pip3.12` etc., respectively, are installed into\n  $HOMEBREW_PREFIX/opt/python@3.12/libexec/bin\n\nIf you do not need a specific version of Python, and always want Homebrew\u0027s `python3` in your PATH:\n  brew install python3\n\n`idle3.12` requires tkinter, which is available separately:\n  brew install python-tk@3.12\n\n`dbm.gnu` is available separately:\n  brew install python-gdbm@3.12\n\nFor more information about Homebrew and Python, see: https://docs.brew.sh/Homebrew-and-Python\n",
  "conflicts_with": [],
  "dependencies": [
    "mpdecimal",
    "openssl@3",
    "sqlite",
    "xz"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Interpreted, interactive, object-oriented programming language",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:40:38+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "python@3.12",
  "github_default_branch": null,
  "github_last_commit_at": null,
  "github_readme_excerpt": null,
  "github_repo": null,
  "github_stars": null,
  "github_topics": [],
  "homepage": "https://www.python.org/",
  "homepage_og_description": "The official home of the Python Programming Language",
  "homepage_og_image": "https://www.python.org/static/opengraph-icon-200x200.png",
  "homepage_title": "Welcome to Python.org",
  "installs_30d": 69107,
  "installs_365d": 759819,
  "installs_90d": 202671,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "Python-2.0",
  "llm_generated_at": "2026-06-20T23:42:34+00:00",
  "llm_model": "claude-haiku-4-5",
  "name": "python@3.12",
  "oldnames": [],
  "one_liner": "Python 3.12 \u2014 interpreted language runtime with standard library, package manager, and REPL.",
  "optional_dependencies": [],
  "rank_30d": 77,
  "rank_365d": 85,
  "rank_90d": 98,
  "raw_hash": "d2fa00721c579e65",
  "recommended_dependencies": [],
  "revision": 4,
  "ruby_source_path": "Formula/p/python@3.12.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [
    "bzip2",
    "expat",
    "libedit",
    "libffi",
    "libxcrypt",
    "ncurses",
    "unzip"
  ],
  "version_head": null,
  "version_stable": "3.12.13",
  "versioned_formulae": [
    "python@3.14",
    "python@3.13",
    "python@3.11",
    "python@3.10",
    "python@3.9"
  ],
  "why_use_this": "Install Python 3.12 specifically when you need that minor version for projects with strict version constraints or to test compatibility. Homebrew\u0027s versioned Python formulae let you run multiple minor versions side-by-side without managing pyenv or other version managers. Comes with pip and venv for package and environment management."
}