# kevin_toolbox
一个通用的工具代码包集合
环境要求
```shell
numpy>=1.19
pytorch>=1.2
```
安装方法:
```shell
pip install kevin-toolbox --no-dependencies
```
[项目地址 Repo](https://github.com/cantbeblank96/kevin_toolbox)
[使用指南 User_Guide](./notes/User_Guide.md)
[免责声明 Disclaimer](./notes/Disclaimer.md)
[版本更新记录](./notes/Release_Record.md):
- v 1.3.4 (2024-04-06)【bug fix】【new feature】
- nested_dict_list
- 【new feature】add replace_identical_with_reference() to value_parser,新增该函数用于将具有相同 id 的多个节点,替换为单个节点和其多个引用的形式。一般用于去除冗余部分,压缩 ndl 的结构。
- 【bug fix】【new feature】fix bug in write(),添加了 saved_node_name_format 参数控制 nodes 下文件名的生成。
- bug:在 v1.3.3 前直接使用原始的 node_name 来作为 nodes/ 目录下的文件名,这导致当 node_name 中带有特殊字符时,比如 "/"(在linux下) 和 ":"(在windows下),将会导致保存失败。
- fix:使用 saved_node_name_format 指定生成文件名的方式,默认方式 '{count}_{hash_name}' 可以避免出现特殊字符。
- 【bug fix】fix bug in write()
- bug:在 v1.3.3 前 processed_s 通过 ndl.set_value() 来逐个节点构建,但是由于根据节点名创建的结果可能和原结构存在差异(详见 ndl.set_value() 中b_force参数的介绍),因此导致 processed_s 和 var 结构不一致,导致出错。
- fix:使用 ndl.copy_() 来创建结构与 var 一致的 processed_s。
- 【new feature】add b_keep_identical_relations to write(),增加该参数用于决定是否保留不同节点之间的 id 相等关系。
- 添加了对应的测试用例。
Raw data
{
"_id": null,
"home_page": "https://github.com/cantbeblank96/kevin_toolbox",
"name": "kevin-toolbox",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "mathematics, pytorch, numpy, machine-learning, algorithm",
"author": "kevin hsu",
"author_email": "xukaiming1996@163.com",
"download_url": "https://files.pythonhosted.org/packages/23/da/6f5b021d4b4ff7f7a9da709f6286631406734c46ff827570228408ec4332/kevin-toolbox-1.3.4.tar.gz",
"platform": null,
"description": "# kevin_toolbox\n\n\u4e00\u4e2a\u901a\u7528\u7684\u5de5\u5177\u4ee3\u7801\u5305\u96c6\u5408\n\n\n\n\u73af\u5883\u8981\u6c42\n\n```shell\nnumpy>=1.19\npytorch>=1.2\n```\n\n\u5b89\u88c5\u65b9\u6cd5\uff1a\n\n```shell\npip install kevin-toolbox --no-dependencies\n```\n\n\n\n[\u9879\u76ee\u5730\u5740 Repo](https://github.com/cantbeblank96/kevin_toolbox)\n\n[\u4f7f\u7528\u6307\u5357 User_Guide](./notes/User_Guide.md)\n\n[\u514d\u8d23\u58f0\u660e Disclaimer](./notes/Disclaimer.md)\n\n[\u7248\u672c\u66f4\u65b0\u8bb0\u5f55](./notes/Release_Record.md)\uff1a\n\n- v 1.3.4 \uff082024-04-06\uff09\u3010bug fix\u3011\u3010new feature\u3011\n - nested_dict_list\n - \u3010new feature\u3011add replace_identical_with_reference() to value_parser\uff0c\u65b0\u589e\u8be5\u51fd\u6570\u7528\u4e8e\u5c06\u5177\u6709\u76f8\u540c id \u7684\u591a\u4e2a\u8282\u70b9\uff0c\u66ff\u6362\u4e3a\u5355\u4e2a\u8282\u70b9\u548c\u5176\u591a\u4e2a\u5f15\u7528\u7684\u5f62\u5f0f\u3002\u4e00\u822c\u7528\u4e8e\u53bb\u9664\u5197\u4f59\u90e8\u5206\uff0c\u538b\u7f29 ndl \u7684\u7ed3\u6784\u3002\n - \u3010bug fix\u3011\u3010new feature\u3011fix bug in write()\uff0c\u6dfb\u52a0\u4e86 saved_node_name_format \u53c2\u6570\u63a7\u5236 nodes \u4e0b\u6587\u4ef6\u540d\u7684\u751f\u6210\u3002\n - bug\uff1a\u5728 v1.3.3 \u524d\u76f4\u63a5\u4f7f\u7528\u539f\u59cb\u7684 node_name \u6765\u4f5c\u4e3a nodes/ \u76ee\u5f55\u4e0b\u7684\u6587\u4ef6\u540d\uff0c\u8fd9\u5bfc\u81f4\u5f53 node_name \u4e2d\u5e26\u6709\u7279\u6b8a\u5b57\u7b26\u65f6\uff0c\u6bd4\u5982 \"/\"\uff08\u5728linux\u4e0b\uff09 \u548c \":\"\uff08\u5728windows\u4e0b\uff09\uff0c\u5c06\u4f1a\u5bfc\u81f4\u4fdd\u5b58\u5931\u8d25\u3002\n - fix\uff1a\u4f7f\u7528 saved_node_name_format \u6307\u5b9a\u751f\u6210\u6587\u4ef6\u540d\u7684\u65b9\u5f0f\uff0c\u9ed8\u8ba4\u65b9\u5f0f '{count}_{hash_name}' \u53ef\u4ee5\u907f\u514d\u51fa\u73b0\u7279\u6b8a\u5b57\u7b26\u3002\n - \u3010bug fix\u3011fix bug in write()\n - bug\uff1a\u5728 v1.3.3 \u524d processed_s \u901a\u8fc7 ndl.set_value() \u6765\u9010\u4e2a\u8282\u70b9\u6784\u5efa\uff0c\u4f46\u662f\u7531\u4e8e\u6839\u636e\u8282\u70b9\u540d\u521b\u5efa\u7684\u7ed3\u679c\u53ef\u80fd\u548c\u539f\u7ed3\u6784\u5b58\u5728\u5dee\u5f02\uff08\u8be6\u89c1 ndl.set_value() \u4e2db_force\u53c2\u6570\u7684\u4ecb\u7ecd\uff09\uff0c\u56e0\u6b64\u5bfc\u81f4 processed_s \u548c var \u7ed3\u6784\u4e0d\u4e00\u81f4\uff0c\u5bfc\u81f4\u51fa\u9519\u3002\n - fix\uff1a\u4f7f\u7528 ndl.copy_() \u6765\u521b\u5efa\u7ed3\u6784\u4e0e var \u4e00\u81f4\u7684 processed_s\u3002\n - \u3010new feature\u3011add b_keep_identical_relations to write()\uff0c\u589e\u52a0\u8be5\u53c2\u6570\u7528\u4e8e\u51b3\u5b9a\u662f\u5426\u4fdd\u7559\u4e0d\u540c\u8282\u70b9\u4e4b\u95f4\u7684 id \u76f8\u7b49\u5173\u7cfb\u3002\n - \u6dfb\u52a0\u4e86\u5bf9\u5e94\u7684\u6d4b\u8bd5\u7528\u4f8b\u3002\n\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "\u4e00\u4e2a\u5e38\u7528\u7684\u5de5\u5177\u4ee3\u7801\u5305\u96c6\u5408",
"version": "1.3.4",
"project_urls": {
"Download": "https://github.com/username/your-package/archive/refs/tags/v1.0.0.tar.gz",
"Homepage": "https://github.com/cantbeblank96/kevin_toolbox"
},
"split_keywords": [
"mathematics",
" pytorch",
" numpy",
" machine-learning",
" algorithm"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7d74dc7dd8c4b1811f6541ef2a8c824ff7564af8803af3490235e2dc36da00f7",
"md5": "5aa9097d65ce777fc20ef90795708ed1",
"sha256": "a58310f3f737eb3e20fde2a53c2e0cd6e3198f6c81947323fc15325dd67d0b8d"
},
"downloads": -1,
"filename": "kevin_toolbox-1.3.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5aa9097d65ce777fc20ef90795708ed1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 296314,
"upload_time": "2024-04-06T13:16:14",
"upload_time_iso_8601": "2024-04-06T13:16:14.568110Z",
"url": "https://files.pythonhosted.org/packages/7d/74/dc7dd8c4b1811f6541ef2a8c824ff7564af8803af3490235e2dc36da00f7/kevin_toolbox-1.3.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "23da6f5b021d4b4ff7f7a9da709f6286631406734c46ff827570228408ec4332",
"md5": "302ae8e926c1b22aeaf7de68b8f2c5b3",
"sha256": "c06beb47078038252a0523f54ac672bfb00ebae25604de552e8e3842abccaff9"
},
"downloads": -1,
"filename": "kevin-toolbox-1.3.4.tar.gz",
"has_sig": false,
"md5_digest": "302ae8e926c1b22aeaf7de68b8f2c5b3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 164186,
"upload_time": "2024-04-06T13:16:17",
"upload_time_iso_8601": "2024-04-06T13:16:17.597919Z",
"url": "https://files.pythonhosted.org/packages/23/da/6f5b021d4b4ff7f7a9da709f6286631406734c46ff827570228408ec4332/kevin-toolbox-1.3.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-06 13:16:17",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "cantbeblank96",
"github_project": "kevin_toolbox",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "kevin-toolbox"
}