生成Jupyter笔记本。
项目描述
herzog
在herzog中编写您的Python Jupyter笔记本!
herzog脚本都是纯Python。这意味着版本控制、拉取请求、CI/CD等等。
太好了!它是如何工作的?
用法
使用上下文管理器来定义Jupyter单元
with herzog.Cell("python"):
print("Hello herzog")
想告诉用户该做什么?创建一个Markdown单元
with herzog.Cell("markdown"):
"""
# How cool is this notebook?
So cool!
"""
使用herzog CLI从您的Python脚本生成笔记本
herzog path/to/my/cool_script.py > path/to/my/cool_notebook.ipynb
示例
下面是一个herzog脚本示例,以及生成的笔记本。herzog源代码和生成的笔记本都可以在herzog仓库中找到。herzog源和生成的笔记本。
请注意,herzog上下文管理器之外的所有内容都不包含在笔记本中。这就是您放置测试、开发笔记、恶意指控或其他任何内容的区域。
import herzog
with herzog.Cell("markdown"):
"""
# Fibonacci:
Recursively generate terms from the Fibonacci sequence.
"""
with herzog.Cell("python"):
def fibonacci(term: int) -> int:
"""
0-indexed fibonacci
"""
assert 0 <= term
if 1 < term:
return fibonacci(term - 1) + fibonacci(term - 2)
else:
return term
# Code outside herzog context does not appear in generated notebooks.
try:
fibonacci(-1)
except AssertionError:
# expected
pass
expected_fibonacci = (0, 1, 1, 2, 3, 5, 8, 13, 21)
for i in range(1, len(expected_fibonacci)):
assert expected_fibonacci[i] == fibonacci(i)
golden_ratio = (1 + 5 ** 0.5) / 2
assert 1e-10 > abs(golden_ratio - fibonacci(26) / fibonacci(25))
安装
pip install herzog
链接
错误
请在GitHub上报告错误、问题、功能请求等。
项目详情
关闭
herzog-0.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 71715b5cf0a64a9ef5c51ad1caa2a2c98061c62cd646297423fa4de48ce376e1 |
|
MD5 | cb21599f3d6447a0eaf9c9a8b6be1550 |
|
BLAKE2b-256 | c8e78c9bbea22d92d74c5edb984e4c6fd04afe0fac869b04dae60856aabf0b44 |