Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

pylhe: Python LHE interface

GitHub Project DOI Scikit-HEP

PyPI version Supported Python versions

GitHub Actions Status Code Coverage status Code style: black

Small and thin Python interface to read Les Houches Event (LHE) files


To install pylhe from PyPI you can just do

python -m pip install pylhe

and to get the required libraries to be able to visualize events install with the "viz" extra

python -m pip install pylhe[viz]

The visualization capabilities require external dependencies of Graphviz and LaTeX.

Get started

The example below provides a simple overview. Full functionality can be inspected from the functions provided in the pylhe module.

import itertools

# You can use LHE files from scikit-hep-testdata
from skhep_testdata import data_path

import pylhe

lhe_file = data_path("pylhe-testlhef3.lhe")
events = pylhe.read_lhe_with_attributes(lhe_file)
print(f"Number of events: {pylhe.read_num_events(lhe_file)}")

# Get event 1
event = next(itertools.islice(events, 1, 2))

# A DOT language graph of the event can be inspected as follows

# The graph is nicely displayed as SVG in Jupyter notebooks

# To save a DOT graph render the graph to a supported image format
# (refer to the Graphviz documentation for more)
event.graph.render(filename="test", format="png", cleanup=True)
event.graph.render(filename="test", format="pdf", cleanup=True)


The preferred BibTeX entry for citation of pylhe is

  author = {Lukas Heinrich and Matthew Feickert and Eduardo Rodrigues},
  title = "{pylhe: v0.3.0}",
  version = {v0.3.0},
  doi = {10.5281/zenodo.1217031},
  url = {},