periodictable
Extensible periodic table of the elements
What it is and what it does
Periodictable is a reference library that wraps element data into an extensible periodic table, enabling programmatic access to atomic properties and scattering calculations. It combines neutron scattering data from the Atomic Institute of the Austrian Universities, X-ray data from the LBL Center for X-ray Optics, and neutron activation estimates based on health-physics literature. The package is designed for scientists and engineers working in crystallography, materials science, and neutron/X-ray analysis who need to look up or compute element-dependent properties in code rather than consulting tables manually.
The library depends on pyparsing and numpy for parsing and numerical operations. It is actively maintained, in production-stable status, and has been in development since 2010. The codebase is public domain with permissive licensing on individual modules, making it suitable for both academic and commercial use.
Use it for:
- Look up atomic mass, density, and other element properties in crystallography or materials analysis workflows.
- Calculate neutron scattering cross-sections for sample composition analysis in neutron diffraction experiments.
- Compute X-ray scattering factors for structure refinement or X-ray diffraction modeling.
- Estimate neutron activation levels for samples in research beams for health physics assessment.
- Build element-aware data processing pipelines in scientific computing applications.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a periodic table of the elements with computed properties for mass, density, X-ray scattering, and neutron scattering calculations.
Yes. Periodictable is a stable, actively maintained reference library with low install friction and no known vulnerabilities. It fills a clear niche for scientists needing programmatic access to element data and scattering calculations. The permissive licensing and public-domain status remove legal friction. Install it if you work with crystallography, neutron science, or X-ray analysis and need element properties in code.
Install
periodictable on PyPI
pip
pip install periodictableuv
uv add periodictablepoetry
poetry add periodictableInstalling periodictable
Before you install
Low friction install with stable, active maintenance. Last release 167 days ago, repository actively maintained with recent commits. Depends only on pyparsing and numpy, both widely-used libraries.
License in practice
Public domain with permissive licensing on individual files. No restrictions on use, modification, or distribution for most of the codebase.
Quickstart
pip install periodictable
import periodictable
element = periodictable.H
print(element.mass, element.density)
Requires Python 3.10 or later.
Verify before relying
- Whether tabulated values match specific crystallography standards or if differences from International Tables for Crystallography are documented.
- Accuracy and completeness of neutron activation estimates for health physics applications.
Package facts
| License | Periodictable is in the public domain. Code in individual files has copyright and license set by individual authors. periodictable/cromerman.py -------------------------- Copyright (c) 2009 Trustees… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — pyparsing, numpy |
| Maintenance | actively maintained — 167 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 166,218/month — #10,504 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: periodictable-2.1.0-py3-none-any.whl
Tags
More Physics packages
NetworkX provides data structures and…
permissive · top 1,000 on PyPI
sympySymPy is a Python library for symbolic…
permissive · top 1,000 on PyPI
pydicomPydicom reads, modifies, and writes DICOM…
permissive · top 5,000 on PyPI
albumentationsAlbumentations applies image transformations to…
permissive · top 5,000 on PyPI
CoolPropCoolProp provides thermodynamic and transport…
permissive · top 5,000 on PyPI
pyquaternionProvides quaternion representation,…
permissive · top 5,000 on PyPI
mendeleevProvides a Python API to query properties of…
permissive · top 15,000 on PyPI
xraydbXrayDB provides a Python interface to a SQLite…
permissive · top 15,000 on PyPI
pyxtalPyXtal generates crystal structures with…
permissive · top 15,000 on PyPI
vasprun-xmlParses VASP calculation output from vasprun.xml…
permissive · top 15,000 on PyPI
thermoThermo calculates temperature and…
permissive · top 15,000 on PyPI
symfcSymfc computes force constants from atomic…
unclear · top 15,000 on PyPI
gemmiGemmi is a C++ library with Python bindings for…
copyleft · top 5,000 on PyPI
vesinVesin computes neighbor lists for atomistic…
permissive · top 15,000 on PyPI
neutron-libNeutron-lib provides shared routines,…
permissive · top 15,000 on PyPI
vesin-torchComputes neighbor lists for atomistic systems…
permissive · top 15,000 on PyPI