Skip to main content

Reliable Notebook to Python converter

Project description

nb2py

nb2py is a comprehensive tool designed to convert Jupyter Notebooks (.ipynb files) into Python scripts (.py files). This tool simplifies the process of transforming interactive notebook cells into a structured Python script, automatically separating import statements and wrapping executable code within an if __name__ == '__main__': guard to maintain the script's portability and usability.

This tool has two versions, a command-line version based on python and a vscode extension.

Features

  • VSCode Extension: A one-click solution for converting notebooks to python files.
  • Command-Line Simplicity: Offers a straightforward command-line interface for easy conversion of notebooks to Python scripts.
  • Import Optimization: Automatically moves all import statements to the top of the generated Python script.
  • Executable Wrap: Wraps all executable code within an if __name__ == '__main__': block, ensuring that the script can be imported without unintended execution.
  • Markdown Conversion: Converts markdown cells into Python comments, preserving the notebook's documentation in the script.
  • Handling Multiline Strings: Converts """ """ to multiple " "\ so there is no spacing issues. Especially useful for prompting LLMs. (added in v0.7.0)

VSCode Extension

Installation

You can install the nb2py extension directly from the Visual Studio Code Marketplace:

  1. Open VS Code.
  2. Navigate to the Extensions view by clicking on the Extensions icon in the Activity Bar on the side of the window.
  3. Search for nb2py. [if not found here is the link]
  4. Click on the Install button.

Usage

After installation, open the Jupyter Notebook you wish to convert. You'll see a new icon in the editor title bar that looks like a Python logo. Click this icon to convert the currently open notebook.

The converted Python script will be saved in the same directory as the notebook with the extension of .py.

Convert Notebook to Python Script Button

CLI Tool

Installation

To install nb2py, run the following setup script. Ensure you have Python 3.6 or later installed on your system.

pip install cli-nb2py

Usage

To convert a Jupyter Notebook to a Python script, use the following command:

nb2py input_notebook.ipynb output_script.py

If the output file name is not provided, nb2py will generate a Python script with the same name as the input notebook (replacing the .ipynb extension with .py).

License

nb2py is released under the MIT License. See the LICENSE file for more details.

Contact

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cli_nb2py-0.7.4.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

cli_nb2py-0.7.4-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file cli_nb2py-0.7.4.tar.gz.

File metadata

  • Download URL: cli_nb2py-0.7.4.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.1

File hashes

Hashes for cli_nb2py-0.7.4.tar.gz
Algorithm Hash digest
SHA256 55d5f1cc6c2889539bc4ecf8e5621048df9e394eb9c1e4e320d4d0e138c4c2da
MD5 83a03df5c9915efbbca391fadf8bacbe
BLAKE2b-256 6d6518919dec10a533832db08fd0b149cfb39e7961cf9537e262064dcaa0f5de

See more details on using hashes here.

File details

Details for the file cli_nb2py-0.7.4-py3-none-any.whl.

File metadata

  • Download URL: cli_nb2py-0.7.4-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.1

File hashes

Hashes for cli_nb2py-0.7.4-py3-none-any.whl
Algorithm Hash digest
SHA256 22f63752e606fb0e99141f639a562bde27aec2fddad653bf390d92c7e7a53b4c
MD5 e66a580a4f51e1ff0772d39b823de2d0
BLAKE2b-256 7b97076b0ada8218abfc477d7a6b313b7a56d0474108fe0eb84f4a24df613320

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page