Skip to main content
https://img.shields.io/pypi/v/pyroot-zen.svg https://gitlab.com/ckhurewa/pyroot-zen/badges/master/pipeline.svg https://gitlab.com/ckhurewa/pyroot-zen/badges/master/coverage.svg https://img.shields.io/badge/License-GPL%20v3-blue.svg Documentation Status https://img.shields.io/pypi/pyversions/pyroot-zen.svg https://img.shields.io/github/tag/root-project/root.svg

pyroot_zen is a wrapper around PyROOT with better syntax simplification. By design, it does NOT introduce any new APIs, in order to make its usage more intuitive, as well as being compatible with other packages.

Why should you use this? as the Zen of Python says: “Readability counts”.

To use, you need only one line:

>> import pyroot_zen

where all objects in ROOT namespace are now patched.

Features at a glance:

  • Pythonic property instead of Getter/Setter.
    • e.g., hist.xaxis.title = "mass" instead of hist.GetAxis().SetTitle("mass")

  • Automatic (awkward C++ to python) arguments conversion.
    • e.g., ROOT.TPolyLine(3, [1,2,3], [1,4,9]) without using array.

  • Pythonic iterable as expected.

How does it work? Basically intercepting __getattr__, __getattribute__, __init__ call where necessary.

Tested with: ROOT 6.08.06 (OSX homebrew), python 2.7.13, pytest 3.1.1.

Relationship with other packages

  • ROOT: This is required to be installed by the user, and PyROOT should also be available.

  • RooStats: If this is installed, the features will also be available automatically.

  • rootpy: While on the surface it looks like they share a lot of similarity, the 2 packages usages are very different: rootpy requires the user to use the new classes/functions from its namespace to benefit from its functionality, whereas pyroot_zen injects the functionality into objects in PyROOT directly, and focusing only on syntaxes reduction.

Release files for pyroot-zen 1.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyroot-zen 1.1.4
File Size Uploaded
pyroot_zen-1.1.4.tar.gz 35.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyroot-zen 1.1.4
File Interpreter ABI Platform
pyroot_zen-1.1.4-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 65.5 kB

Release files / pyroot_zen-1.1.4.tar.gz

Download URL pyroot_zen-1.1.4.tar.gz
Size 35.7 kB
Tags Source
SHA-256 checksum
How to use checksums
477c52cfb262b4bc56efaa25b633067f3a462c2b23efd23e83caebd2682d214d
BLAKE2b-256 checksum
How to use checksums
b680d4146f1780f3ba32e6ca167b7a27df05d6e044be496de268df4cb486fffc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / pyroot_zen-1.1.4-py2.py3-none-any.whl

Download URL pyroot_zen-1.1.4-py2.py3-none-any.whl
Size 29.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
872f8d49a76ba17ed1f89ea987cb25769232e22ae95766f04b9006a3bcbd36e5
BLAKE2b-256 checksum
How to use checksums
13a42f651c957640a87abeb5c73b06c32eb38864e021829c7e06261bd86c3456
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release history Release notifications | RSS feed

This release

1.1.4 This release

2 release files

1.1.3

2 release files

1.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page