Back importlib.metadata 30 Aug, 2025

The module importlib.metadata is part of Python’s standard library (since Python 3.8).
It lets you access metadata about installed packages in your environment — things like a package’s version, entry points, requirements, and other distribution info.


✅ Common Uses of importlib.metadata

1. Get the version of an installed package

from importlib.metadata import version

print(version("numpy"))
# Example output: '1.26.4'

2. List all installed packages

from importlib.metadata import distributions

for dist in distributions():
    print(dist.metadata["Name"], dist.version)

3. Access package metadata

from importlib.metadata import metadata

pkg_metadata = metadata("pandas")

print(pkg_metadata["Name"])      # 'pandas'
print(pkg_metadata["Author"])    # 'The Pandas Development Team'
print(pkg_metadata["License"])   # 'BSD'

4. Get package entry points (useful for plugins)

from importlib.metadata import entry_points

eps = entry_points()
print(eps.select(group="console_scripts"))  # Entry points for CLI tools

5. Dependencies of a package

from importlib.metadata import requires

print(requires("requests"))
# Example: ['charset-normalizer<4,>=2', 'idna<4,>=2.5', ...]

⚠️ Backward compatibility

  • In Python <3.8, importlib.metadata is not built-in.
    You can install it as a backport:

    pip install importlib-metadata
    

Then use:

import importlib_metadata as metadata