--- id: f90nml version: "1.5" license: Apache-2.0 license_treatment: permissive maintenance: active --- # f90nml — Fortran 90 namelist parser License: permissive · Maintenance: active · Downloads: 163.3K/mo ## What it is and what it does f90nml is a Python parser and editor for Fortran namelist files, the configuration format used in many scientific computing and weather modeling applications. It reads namelist syntax into Python dictionaries, allowing you to inspect and modify values programmatically, then write them back to disk while optionally preserving comments and formatting. The package includes both a Python API and a command-line tool for shell-based manipulation. It handles Fortran data type conversions automatically (arrays, floats, booleans, strings) and supports exporting to JSON and YAML formats for integration with other tools. With zero runtime dependencies and support for Python 2.7 through 3.13, it integrates easily into existing workflows without adding installation friction. Use it for: - Parse Fortran configuration files from weather models or scientific simulations to extract and validate parameters in Python. - Modify individual namelist values from shell scripts or CI/CD pipelines using the command-line interface. - Convert Fortran namelist configurations to JSON or YAML for documentation, version control, or cross-language tool integration. - Programmatically generate or patch namelist files for parameter sweeps in computational experiments. - Preserve formatting and comments in namelist files while making targeted edits using the patch function. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. f90nml reads, writes, and modifies Fortran namelist files, converting them to and from Python dictionaries and other formats like JSON and YAML. Yes. f90nml is a stable, actively maintained tool with no dependencies, permissive licensing, and a clear niche: anyone working with Fortran namelists in Python will find it essential. The low install friction and broad Python version support make it a safe addition to scientific computing or climate modeling workflows. ## Install pip install f90nml uv add f90nml poetry add f90nml ## Installing f90nml Before you install: Installation is straightforward with no runtime dependencies. The package is actively maintained with a recent commit on 2026-07-17 and has been stable since its initial release in 2014. License in practice: Apache-2.0 is a permissive license that allows commercial and private use with minimal restrictions, making it suitable for most projects. Quickstart: import f90nml nml = f90nml.read('sample.nml') nml['config_nml']['steps'] = 432 nml.write('new_sample.nml') Verify before relying: - Whether YAML support requires PyYAML to be installed separately or if the [yaml] extras automatically handle the dependency. - Specific performance characteristics when parsing large or deeply nested namelist files. ## Package facts - License: Apache-2.0 (permissive) - Python support: unspecified - Install friction: low - Maintenance: active - Downloads: 163.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags fortran namelist parser, read fortran namelist files, fortran config file editor, namelist to json conversion, fortran nml parser python, modify fortran namelists, fortran namelist command line, fortran-interop, scientific-computing, config-parsing [View on SkillFed](https://skillfed.io/packages/f90nml) · [View on PyPI](https://pypi.org/project/f90nml/)