使用nbdev编写协作库
项目描述
nbagile
使
nbdev
更敏捷友好
安装
pip install nbagile
目标
- 当使用
docments
导出源代码时,将附上并格式化docstring为Numpy格式 - 导出测试并将其转换为pytest兼容的文件格式
- 使文档能在Sphynx上运行
- 测试被导出到
tests
文件夹,源代码到源代码文件夹,Markdown/Sphynx文档到docs
文件夹 - 然后可以从这三个项目重新创建单个notebook
当前功能
使用CLI
将nbdev_
命令替换为nbagile_
以使用其功能。 当前支持
nbagile_build_lib
:导出代码并将其转换为black-style + NumPy docstringsnbagile_diff_nbs
:一个特殊的nbdev_diff_nbs
版本,以支持nbagile的工作方式nbagile_build_docs
:使用nbverbose构建文档
从docments
导出代码到NumPy
docments 是一种非常高效的代码参数文档方式,类似于javascript的文档方式。我们利用注释块和typing来描述参数的用法。例如,我们有以下内容
def addition(
a:int, # The first number to add
b:(int,float), # The second number to add
) -> int: # The sum of a and b
"Adds a and b"
return a+b
但这并不是我们通常接受的方式来记录代码,整体看起来相当难看。
nbagile
支持构建你的 nbdev 构建的库,自动将此代码转换为更符合 NumPy 风格的文档字符串和定义,并且额外提供模仿 Black 格式的功能。
def addition(a,b):
"""Adds a and b
Parameters
----------
a : int
The first number to add
b : (int,float)
The second number to add
Returns
----------
int
The sum of a and b
"""
return a+b
这适用于函数、类以及装饰器包装的函数。
nbdev 的可选 __all__
如果你不喜欢每个文件中 nbdev 的 __all__
格式,你可以将额外的设置添加到你的 settings.ini
:use_all
。
如果设置为 False
,你不会在每个 Python 文件中生成 __all__
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪一个,请了解有关 安装包 的更多信息。
源分布
nbagile-0.0.2.tar.gz (12.6 kB 查看哈希值)
构建分布
nbagile-0.0.2-py3-none-any.whl (11.7 kB 查看哈希值)
关闭
nbagile-0.0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 43f9f519fde5a10f62ec527074d3471319abc30e12588d1eac8e4c714370f61f |
|
MD5 | 3cc909a1dd5b30bef623b57304b7fdf5 |
|
BLAKE2b-256 | bec593afcfb260fb4ea71f977873b79e55baf84fd25dde0f4b20dab170bb1b1d |
关闭
nbagile-0.0.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9ceccba86d6f815f2c15195fb9493980f196540338cbb53cf8c79c311374e310 |
|
MD5 | 56690820247972c16fbe7e250cd098f3 |
|
BLAKE2b-256 | 030a48fd7b7d9fe9296326eb81b02b232599adc519d8b8cfd9cfbba6433709dd |