mirror of
https://github.com/aykhans/AzSuicideDataVisualization.git
synced 2025-04-22 02:23:48 +00:00
100 lines
2.4 KiB
Python
100 lines
2.4 KiB
Python
"""The main API for the v3 notebook format.
|
|
"""
|
|
|
|
# Copyright (c) IPython Development Team.
|
|
# Distributed under the terms of the Modified BSD License.
|
|
|
|
__all__ = [
|
|
"NotebookNode",
|
|
"new_code_cell",
|
|
"new_text_cell",
|
|
"new_notebook",
|
|
"new_output",
|
|
"new_worksheet",
|
|
"new_metadata",
|
|
"new_author",
|
|
"new_heading_cell",
|
|
"nbformat",
|
|
"nbformat_minor",
|
|
"nbformat_schema",
|
|
"reads_json",
|
|
"writes_json",
|
|
"read_json",
|
|
"write_json",
|
|
"to_notebook_json",
|
|
"reads_py",
|
|
"writes_py",
|
|
"read_py",
|
|
"write_py",
|
|
"to_notebook_py",
|
|
"downgrade",
|
|
"upgrade",
|
|
"parse_filename",
|
|
]
|
|
|
|
import os
|
|
|
|
from .convert import downgrade, upgrade
|
|
from .nbbase import (
|
|
NotebookNode,
|
|
nbformat,
|
|
nbformat_minor,
|
|
nbformat_schema,
|
|
new_author,
|
|
new_code_cell,
|
|
new_heading_cell,
|
|
new_metadata,
|
|
new_notebook,
|
|
new_output,
|
|
new_text_cell,
|
|
new_worksheet,
|
|
)
|
|
from .nbjson import reads as read_json
|
|
from .nbjson import reads as reads_json
|
|
from .nbjson import to_notebook as to_notebook_json
|
|
from .nbjson import writes as write_json
|
|
from .nbjson import writes as writes_json
|
|
from .nbpy import reads as read_py
|
|
from .nbpy import reads as reads_py
|
|
from .nbpy import to_notebook as to_notebook_py
|
|
from .nbpy import writes as write_py
|
|
from .nbpy import writes as writes_py
|
|
|
|
|
|
def parse_filename(fname):
|
|
"""Parse a notebook filename.
|
|
|
|
This function takes a notebook filename and returns the notebook
|
|
format (json/py) and the notebook name. This logic can be
|
|
summarized as follows:
|
|
|
|
* notebook.ipynb -> (notebook.ipynb, notebook, json)
|
|
* notebook.json -> (notebook.json, notebook, json)
|
|
* notebook.py -> (notebook.py, notebook, py)
|
|
* notebook -> (notebook.ipynb, notebook, json)
|
|
|
|
Parameters
|
|
----------
|
|
fname : unicode
|
|
The notebook filename. The filename can use a specific filename
|
|
extention (.ipynb, .json, .py) or none, in which case .ipynb will
|
|
be assumed.
|
|
|
|
Returns
|
|
-------
|
|
(fname, name, format) : (unicode, unicode, unicode)
|
|
The filename, notebook name and format.
|
|
"""
|
|
basename, ext = os.path.splitext(fname)
|
|
if ext == ".ipynb":
|
|
format = "json"
|
|
elif ext == ".json":
|
|
format = "json"
|
|
elif ext == ".py":
|
|
format = "py"
|
|
else:
|
|
basename = fname
|
|
fname = fname + ".ipynb"
|
|
format = "json"
|
|
return fname, basename, format
|