kevin-toolbox-dev 1.4.6__py3-none-any.whl → 1.4.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. kevin_toolbox/__init__.py +2 -2
  2. kevin_toolbox/{developing → computer_science/algorithm}/decorator/__init__.py +2 -1
  3. kevin_toolbox/computer_science/algorithm/decorator/retry.py +62 -0
  4. kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/__init__.py +1 -0
  5. kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/multi_process_execute.py +109 -0
  6. kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/multi_thread_execute.py +50 -29
  7. kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/utils/__init__.py +15 -0
  8. kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/utils/wrapper_with_timeout_1.py +69 -0
  9. kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/utils/wrapper_with_timeout_2.py +76 -0
  10. kevin_toolbox/computer_science/algorithm/registration/__init__.py +1 -0
  11. kevin_toolbox/computer_science/algorithm/registration/serializer_for_registry_execution.py +82 -0
  12. kevin_toolbox/computer_science/data_structure/executor.py +2 -2
  13. kevin_toolbox/data_flow/core/cache/cache_manager_for_iterator.py +1 -1
  14. kevin_toolbox/data_flow/file/json_/write_json.py +36 -3
  15. kevin_toolbox/env_info/variable_/env_vars_parser.py +17 -2
  16. kevin_toolbox/nested_dict_list/serializer/backends/_json_.py +2 -2
  17. kevin_toolbox/nested_dict_list/serializer/variable.py +14 -2
  18. kevin_toolbox/nested_dict_list/serializer/write.py +2 -0
  19. kevin_toolbox/network/__init__.py +10 -0
  20. kevin_toolbox/network/download_file.py +120 -0
  21. kevin_toolbox/network/fetch_content.py +55 -0
  22. kevin_toolbox/network/fetch_metadata.py +64 -0
  23. kevin_toolbox/network/get_response.py +50 -0
  24. kevin_toolbox/network/variable.py +6 -0
  25. kevin_toolbox/patches/for_logging/build_logger.py +1 -1
  26. kevin_toolbox/patches/for_matplotlib/common_charts/__init__.py +45 -0
  27. kevin_toolbox/patches/for_matplotlib/common_charts/plot_bars.py +63 -22
  28. kevin_toolbox/patches/for_matplotlib/common_charts/plot_confusion_matrix.py +67 -20
  29. kevin_toolbox/patches/for_matplotlib/common_charts/plot_distribution.py +66 -17
  30. kevin_toolbox/patches/for_matplotlib/common_charts/plot_from_record.py +21 -0
  31. kevin_toolbox/patches/for_matplotlib/common_charts/plot_lines.py +63 -19
  32. kevin_toolbox/patches/for_matplotlib/common_charts/plot_scatters.py +61 -12
  33. kevin_toolbox/patches/for_matplotlib/common_charts/plot_scatters_matrix.py +57 -14
  34. kevin_toolbox/patches/for_matplotlib/common_charts/utils/__init__.py +3 -0
  35. kevin_toolbox/patches/for_matplotlib/common_charts/utils/get_output_path.py +15 -0
  36. kevin_toolbox/patches/for_matplotlib/common_charts/utils/save_plot.py +11 -0
  37. kevin_toolbox/patches/for_matplotlib/common_charts/utils/save_record.py +34 -0
  38. kevin_toolbox/patches/for_matplotlib/variable.py +20 -0
  39. kevin_toolbox_dev-1.4.8.dist-info/METADATA +86 -0
  40. {kevin_toolbox_dev-1.4.6.dist-info → kevin_toolbox_dev-1.4.8.dist-info}/RECORD +43 -25
  41. kevin_toolbox_dev-1.4.6.dist-info/METADATA +0 -76
  42. /kevin_toolbox/{developing → computer_science/algorithm}/decorator/restore_original_work_path.py +0 -0
  43. {kevin_toolbox_dev-1.4.6.dist-info → kevin_toolbox_dev-1.4.8.dist-info}/WHEEL +0 -0
  44. {kevin_toolbox_dev-1.4.6.dist-info → kevin_toolbox_dev-1.4.8.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,86 @@
1
+ Metadata-Version: 2.1
2
+ Name: kevin-toolbox-dev
3
+ Version: 1.4.8
4
+ Summary: 一个常用的工具代码包集合
5
+ Home-page: https://github.com/cantbeblank96/kevin_toolbox
6
+ Download-URL: https://github.com/username/your-package/archive/refs/tags/v1.0.0.tar.gz
7
+ Author: kevin hsu
8
+ Author-email: xukaiming1996@163.com
9
+ License: MIT
10
+ Keywords: mathematics,pytorch,numpy,machine-learning,algorithm
11
+ Platform: UNKNOWN
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Programming Language :: Python
14
+ Classifier: Programming Language :: Python :: 3
15
+ Requires-Python: >=3.6
16
+ Description-Content-Type: text/markdown
17
+ Requires-Dist: torch (>=1.2.0)
18
+ Requires-Dist: numpy (>=1.19.0)
19
+ Provides-Extra: plot
20
+ Requires-Dist: matplotlib (>=3.0) ; extra == 'plot'
21
+ Provides-Extra: rest
22
+ Requires-Dist: pytest (>=6.2.5) ; extra == 'rest'
23
+ Requires-Dist: line-profiler (>=3.5) ; extra == 'rest'
24
+
25
+ # kevin_toolbox
26
+
27
+ 一个通用的工具代码包集合
28
+
29
+
30
+
31
+ 环境要求
32
+
33
+ ```shell
34
+ numpy>=1.19
35
+ pytorch>=1.2
36
+ ```
37
+
38
+ 安装方法:
39
+
40
+ ```shell
41
+ pip install kevin-toolbox --no-dependencies
42
+ ```
43
+
44
+
45
+
46
+ [项目地址 Repo](https://github.com/cantbeblank96/kevin_toolbox)
47
+
48
+ [使用指南 User_Guide](./notes/User_Guide.md)
49
+
50
+ [免责声明 Disclaimer](./notes/Disclaimer.md)
51
+
52
+ [版本更新记录](./notes/Release_Record.md):
53
+
54
+ - v 1.4.8 (2025-03-06)【new feature】【refactor】
55
+
56
+ - 【new feature】network,新增网络模块。
57
+ - 该模块包含网络访问相关的函数:
58
+ - get_response(),获取 url 的响应。
59
+ - fetch_metadata(),从 URL/response 中获取文件名、后缀(扩展名)、大小等元信息。
60
+ - fetch_content(),从 URL/response 中获取内容。
61
+ - download_file(),下载文件。
62
+ - env_info
63
+ - modify Env_Vars_Parser.parse(),新增 default 参数用于支持解释失败时候返回默认值。
64
+ - computer_science.algorithm
65
+ - 【refactor】【new feature】decorator,从 developing 中将装饰器相关模块整合到 cs.algorithm 中。
66
+ - 该目录目前包含以下函数:
67
+ - retry(),在函数执行失败时,等待一定时间后重试多次。
68
+ - restore_original_work_path(),在运行函数 func 前备份当前工作目录,并在函数运行结束后还原到原始工作目录。
69
+ - registration
70
+ - 【new feature】add Serializer_for_Registry_Execution,用于对基于 Registry 中成员构建的执行过程进行序列化和反序列化操作。
71
+ - nested_dict_list.serializer
72
+ - modify write(),增加返回值,返回保存到的路径。
73
+ - patches.for_matplotlib
74
+ - 【new feature】add COMMON_CHARTS,增加该注册器用于管理 common_charts 模块中的方法。
75
+ - common_charts
76
+ - 为所有plot_xx函数增加了注释和测试用例。
77
+ - 为所有plot_xx函数增加以下参数:
78
+ - b_generate_record:是否保存函数参数为档案。
79
+ - 默认为 False,当设置为 True 时将会把函数参数保存成 [output_path].record.tar。
80
+ - 后续可以使用 plot_from_record() 函数或者 Serializer_for_Registry_Execution 读取该档案,并进行修改和重新绘制。
81
+ - 该参数仅在 output_dir 和 output_path 非 None 时起效。
82
+ - output_path:图片输出路径。
83
+ - 支持直接指定图片要保存的路径,在原有的通过 output_dir 和 title 自动生成路径的方式之外,提供了另一个指定的方式。
84
+ - 【new feature】add plot_from_record,从保存的档案 .record.tar 文件中恢复并绘制图像。
85
+
86
+
@@ -1,4 +1,4 @@
1
- kevin_toolbox/__init__.py,sha256=J3exMbMRFMTDP3RxpdeO_mXW0RvxbLdqQ_D0yxWUDmE,410
1
+ kevin_toolbox/__init__.py,sha256=-LfyHd72E2h2v9MwZAMsu9zhWgDH_aE1sLRM_F1fXcQ,410
2
2
  kevin_toolbox/computer_science/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
3
  kevin_toolbox/computer_science/algorithm/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
4
4
  kevin_toolbox/computer_science/algorithm/cache_manager/__init__.py,sha256=p2hddkZ1HfYF9-m2Hx-o9IotwQHd4QwDCePy2ADpTDA,41
@@ -23,6 +23,9 @@ kevin_toolbox/computer_science/algorithm/combinatorial_optimization/zero_one_kna
23
23
  kevin_toolbox/computer_science/algorithm/combinatorial_optimization/test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
24
  kevin_toolbox/computer_science/algorithm/combinatorial_optimization/test/test_get_subset_with_largest_product.py,sha256=MVsQ1KgjwIVrXCejE6T08JOYnyXS2a9YMVBenvi6qXM,1914
25
25
  kevin_toolbox/computer_science/algorithm/combinatorial_optimization/test/test_zero_one_knapsack_problem.py,sha256=4j7IBmqkUSRFFIOOMU721eIwaLEiYL2BLx6xN5mJPDQ,2078
26
+ kevin_toolbox/computer_science/algorithm/decorator/__init__.py,sha256=6FNPXWrvLd8G-EjF1rLCboMqs3qWDkcxNKmCHQQ8QjQ,92
27
+ kevin_toolbox/computer_science/algorithm/decorator/restore_original_work_path.py,sha256=HyDSMHbFsCVRrT5l3tledrGLxP7fCz4TVJ94zaPZPcM,399
28
+ kevin_toolbox/computer_science/algorithm/decorator/retry.py,sha256=rdpMzWHhrC2imG2sN0zCBwpeq0Br2Y8N4Kg0TsQPvRE,1927
26
29
  kevin_toolbox/computer_science/algorithm/execution_graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
30
  kevin_toolbox/computer_science/algorithm/execution_graph/jump_node.py,sha256=Bmtc-S154S3gYmbIB98tcwvCc_qBkZoUkE9c3IRJ1dM,3297
28
31
  kevin_toolbox/computer_science/algorithm/execution_graph/random_node.py,sha256=4txbyT2h5F9JgUejAkqBWamSVQ2FlAW0FKt_i1NW5zs,3189
@@ -35,14 +38,19 @@ kevin_toolbox/computer_science/algorithm/for_seq/flatten_list.py,sha256=XnDq-_nQ
35
38
  kevin_toolbox/computer_science/algorithm/for_seq/get_subsets.py,sha256=uVc2pf9cBjX9sWd9VJ3w6nbsRPaeFT1fXRFfGl1zk6Q,309
36
39
  kevin_toolbox/computer_science/algorithm/locks/__init__.py,sha256=ZjZjqGsQB-z9MoYfOPYlI0H7nfZI1hNgxtmJaDdrynI,35
37
40
  kevin_toolbox/computer_science/algorithm/locks/mutex_lock.py,sha256=81cCw3oTXCZxFNhUzFTB5cPKmvbcLM_Gg-5DlT2nuRQ,2492
38
- kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/__init__.py,sha256=EUy1RptOJCLzu6L0ZWGdyto0btI_vEvjEJHvKKBN4pk,55
41
+ kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/__init__.py,sha256=bIyMaB3v6JFjkrY7-sg_-yAnFH8I53E2qxIhGprcLzo,112
39
42
  kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/async_executor.py,sha256=yWHpD_1XrC8hG3PWXUZEDj5rnfM0-d-NptRE856tcmY,896
40
- kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/multi_thread_execute.py,sha256=WSQZ9BE-21oc59leHxd-2IRMMxpmEezX7SX7e1UyV-4,3126
43
+ kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/multi_process_execute.py,sha256=00QSeECaglANNyfeAeqWrP83WAhoixpg_zyy6k1ioyY,4176
44
+ kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/multi_thread_execute.py,sha256=psvezDjaPAwK05GYCJno7GhiW-Zt_Swy5nuyS_xOgUU,3901
45
+ kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/utils/__init__.py,sha256=zdYxhuhJk3m7b1MMaXh2frCpOh6vbK3N6u3t0UEC3_w,475
46
+ kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/utils/wrapper_with_timeout_1.py,sha256=8vO26zBOq12BXJc0wudyGeWObIAfDkxWU-pg5VOOZMA,2165
47
+ kevin_toolbox/computer_science/algorithm/parallel_and_concurrent/utils/wrapper_with_timeout_2.py,sha256=LcDBFjPY77tyZGjk2g3iCEj7bNeQS4usaqgoUQAZxSY,2412
41
48
  kevin_toolbox/computer_science/algorithm/pareto_front/__init__.py,sha256=F1uD0ZT2Ukb708_Eay96SEhaDfCq9YEheJRust33P6w,111
42
49
  kevin_toolbox/computer_science/algorithm/pareto_front/get_pareto_points_idx.py,sha256=WR-_9BruqAWH0QECa40b1Iz1_k6uesBrUYrn2s9ALBM,3008
43
50
  kevin_toolbox/computer_science/algorithm/pareto_front/optimum_picker.py,sha256=wnYN2s9r2g1z5wF0FvFLawRYITUJbMXbBs4TPsdvhlE,9923
44
- kevin_toolbox/computer_science/algorithm/registration/__init__.py,sha256=teEd9HkrB6baLpwNwae5c4wn0QRwV3KtBv-2V9-Z7cc,49
51
+ kevin_toolbox/computer_science/algorithm/registration/__init__.py,sha256=w9CHaFB1rIfIAiKrSXePwdhjN8kaRrxxdBwjJ7S2aWk,152
45
52
  kevin_toolbox/computer_science/algorithm/registration/registry.py,sha256=X1I04ZO2lTE36TjvJ1tcepl7xXD0OJWCA82RDsoENvA,17734
53
+ kevin_toolbox/computer_science/algorithm/registration/serializer_for_registry_execution.py,sha256=a-bsb1JCc0rfHhz1mCua-5NWYu-lx4kPY9Ubp5MKUVU,3156
46
54
  kevin_toolbox/computer_science/algorithm/scheduler/__init__.py,sha256=ENzZsNaMu6ISilTxeE3_EP_L0dNi8SI7IYdTdxic2nw,76
47
55
  kevin_toolbox/computer_science/algorithm/scheduler/strategy_manager.py,sha256=yLh2GBEsedJhqvB90zEmAOdZ8IF7nn1r9lSE95BbnEQ,12194
48
56
  kevin_toolbox/computer_science/algorithm/scheduler/trigger.py,sha256=YlqTX2TE44BwcQI0jfvcBCJhouhdAYuhwu2QJhuBWP0,4470
@@ -58,13 +66,13 @@ kevin_toolbox/computer_science/algorithm/statistician/init_var/init_by_data_form
58
66
  kevin_toolbox/computer_science/algorithm/statistician/init_var/init_by_like.py,sha256=8QfvltiNDqZUYiNW6Ebt0UIuYvyqhSpsCYn99T2q70c,572
59
67
  kevin_toolbox/computer_science/algorithm/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
68
  kevin_toolbox/computer_science/data_structure/__init__.py,sha256=_esL73v9Gi40xb5N7UGxslIk8yHM6idQlXbzELR7XhA,31
61
- kevin_toolbox/computer_science/data_structure/executor.py,sha256=i-2zQj4lj597BvkarCMT-gYxhoRe8cHyQyO98X7m-9E,6206
69
+ kevin_toolbox/computer_science/data_structure/executor.py,sha256=ogcozUbd2QW6AruS50CkMdXWc9rE_UJd-KcHO_RMXQg,6211
62
70
  kevin_toolbox/dangerous/__init__.py,sha256=7TqcyVO0IUUZnFw6vFybvdY7UCg-Bv1Moh95IIVMT2c,93
63
71
  kevin_toolbox/dangerous/dump_into_pickle_with_executor_attached.py,sha256=oaPlXyMsG57XbahVqrZENvGSZy2EefoRCmfpm_6tNEQ,2898
64
72
  kevin_toolbox/data_flow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
73
  kevin_toolbox/data_flow/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
66
74
  kevin_toolbox/data_flow/core/cache/__init__.py,sha256=xA92Lpp3iOdqsiDl-vA-93rLT-vLP29OInnpIWZ6Yn8,67
67
- kevin_toolbox/data_flow/core/cache/cache_manager_for_iterator.py,sha256=DqTNiZbnLWv0BjQMoUV5-tiqTcsIBJetjZ7BwYEtNoY,10095
75
+ kevin_toolbox/data_flow/core/cache/cache_manager_for_iterator.py,sha256=LzhtCfAF6Xz9aM3ZCaplYDsyLSRpq_1hJjNmG2vsTlw,10111
68
76
  kevin_toolbox/data_flow/core/cache/test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
69
77
  kevin_toolbox/data_flow/core/cache/test/test_cache_manager_for_iterator.py,sha256=OjJEEmvWtsGCPFXp2NQP2lpUGFXe9Zr2EpQSfRTDfRI,1147
70
78
  kevin_toolbox/data_flow/core/reader/__init__.py,sha256=i2118MlsNSJHG5u6ZuPcN3NW2LZmYUtDO7dNEdnOncI,146
@@ -76,7 +84,7 @@ kevin_toolbox/data_flow/file/excel/__init__.py,sha256=5m_rmklI6n6yk4rSAEW39pxzYT
76
84
  kevin_toolbox/data_flow/file/excel/write_excel_with_matrix.py,sha256=zrY_l0xCBpjqxm_9MoGpEXaZ4V_UwRMRgShessJ1sxA,5121
77
85
  kevin_toolbox/data_flow/file/json_/__init__.py,sha256=VAt8COS2tO3PJRuhSc43i35fEOlArFM_YahdTmEBaHE,85
78
86
  kevin_toolbox/data_flow/file/json_/read_json.py,sha256=RyCeNONMmvVOeX_F3kSSmED_nx4opipLe8OHJzXKZvQ,2151
79
- kevin_toolbox/data_flow/file/json_/write_json.py,sha256=uG6UnQ9KVhL_UWndGjvLLHF_UoGtOwVn4ADi1Gb1nRU,2417
87
+ kevin_toolbox/data_flow/file/json_/write_json.py,sha256=ZiNrVUK3ofFmtA-5mU_W1N7bDdReC_yi6CtG2I47B4A,4198
80
88
  kevin_toolbox/data_flow/file/json_/converter/__init__.py,sha256=oQMgAgzELLq_f4LIIfz5E6l_E7g4lFsXqfmnJ3tPZTY,401
81
89
  kevin_toolbox/data_flow/file/json_/converter/convert_dict_key_to_number.py,sha256=SuSZj_HCqKZutHAJ5AttABnGBRZplPGQhMxJBt2Wlgc,559
82
90
  kevin_toolbox/data_flow/file/json_/converter/convert_ndarray_to_list.py,sha256=GALpC1MFJ4aMzs0FZIfJScYznfCP-gmhPeM8sWXGSWg,391
@@ -118,8 +126,6 @@ kevin_toolbox/data_flow/file/markdown/utils/save_images_in_ndl.py,sha256=F_c6FP4
118
126
  kevin_toolbox/developing/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
119
127
  kevin_toolbox/developing/general_matrix_multiplication.py,sha256=Ie9c8mYBYR-Bg7CjU4L1dsOxXsxnx1jz-rA7_ez7vjg,2089
120
128
  kevin_toolbox/developing/test.py,sha256=6Y23SY3FJVrvZmiiXKNPKv84lhVRW-XyjNeecj9lLYA,241
121
- kevin_toolbox/developing/decorator/__init__.py,sha256=d_P-mzZf6J5llfJyWFHfOjllOsZisFk2gbBxiI0XrpQ,66
122
- kevin_toolbox/developing/decorator/restore_original_work_path.py,sha256=HyDSMHbFsCVRrT5l3tledrGLxP7fCz4TVJ94zaPZPcM,399
123
129
  kevin_toolbox/developing/design_pattern/__init__.py,sha256=6ESz8DyhhWxOqiNr-U8lCqxes-vMc7aHel25ACl9gKE,20
124
130
  kevin_toolbox/developing/design_pattern/producer_consumer/__init__.py,sha256=6yv2T3dOIHUR_QvDxZDxrmkqn8y_6rlt5WeHx-AV1Ck,28
125
131
  kevin_toolbox/developing/design_pattern/producer_consumer/consumer.py,sha256=5fg-rqDfgxIQi9ilW9sNE4qW2YZK8TBHFZUKlJcJeEw,892
@@ -146,7 +152,7 @@ kevin_toolbox/env_info/test/test_check_.py,sha256=wiIM_UVy_ksdq3la-pbF605Lhl5iW3
146
152
  kevin_toolbox/env_info/test/test_variable_.py,sha256=n9To8UNfBSNey8Xy7relXcbrf0yX8ZoZzfJctd2fHBs,1657
147
153
  kevin_toolbox/env_info/test/test_version.py,sha256=xnF7RAcLSN3gpjIbVxFUV2-lmv0w7gOhdRa4XN0z0Q0,1728
148
154
  kevin_toolbox/env_info/variable_/__init__.py,sha256=qFs8ZZVBjAfj6IuUujYxaEnmXk6HEbtN6GXaIkuQhoM,81
149
- kevin_toolbox/env_info/variable_/env_vars_parser.py,sha256=8k6nBCD9oFsFu_Bq6usz3BF5NHr03c7SxFgbDj9EpP8,3781
155
+ kevin_toolbox/env_info/variable_/env_vars_parser.py,sha256=VpJNXH928LQ8ZC5TdN6YHCp9eHbbEcuNPNkEUdzCW-0,4385
150
156
  kevin_toolbox/env_info/version/__init__.py,sha256=PSrrvrYccfcE36IkOWG5kLQlKopfenQJ-4xilCdRULY,187
151
157
  kevin_toolbox/env_info/version/compare_version.py,sha256=rAksAR1OuOE5TrfJx3h5w7w5vftpcv_oJPHWGwuX7TI,2489
152
158
  kevin_toolbox/env_info/version/parse_version.py,sha256=QhYVO9hLZ8o4wdXWg5PBr0WIu5VayR-QFKQ_KyLDLgI,860
@@ -253,10 +259,10 @@ kevin_toolbox/nested_dict_list/serializer/__init__.py,sha256=79dd9l-mNz0bycFKjNm
253
259
  kevin_toolbox/nested_dict_list/serializer/enum_variable.py,sha256=RWPydtXI4adOJYGo_k5CWHSL0Odzj_bsahb24p1ranY,847
254
260
  kevin_toolbox/nested_dict_list/serializer/read.py,sha256=HaEJJw7hBVNmsIs348kaIyatHP77Kr-JHEwYqRwLrso,3202
255
261
  kevin_toolbox/nested_dict_list/serializer/saved_node_name_builder.py,sha256=qsD-rmDmVaKZP4owN3Wm3QY2Ksi71XlYETqw4VmIsSU,1011
256
- kevin_toolbox/nested_dict_list/serializer/variable.py,sha256=ZywG6obipRBCGY1cY42gdvsuWk8GLZXr6eCYcW7ZJ9c,392
257
- kevin_toolbox/nested_dict_list/serializer/write.py,sha256=ZUYJlBXQbCkMW2UN3d29obskGGbTA-gm3dmuLLltxLI,24101
262
+ kevin_toolbox/nested_dict_list/serializer/variable.py,sha256=dDOhaj_GpIpiqKRvIrYzMejo0Oqc-Ie2x569vcl3XrA,657
263
+ kevin_toolbox/nested_dict_list/serializer/write.py,sha256=7WwnT7hO7Rvs3ut4wdS17LgMv9jQOy2Bo4_QpzEi-Dw,24122
258
264
  kevin_toolbox/nested_dict_list/serializer/backends/__init__.py,sha256=8g7y-L3cmctxao616dVkGiot00FJzKNmNl_69V2bSmE,39
259
- kevin_toolbox/nested_dict_list/serializer/backends/_json_.py,sha256=oJXIc28yjxsD9ZJuw120pVHTVsTzCdaXEhVUSQeydq4,2145
265
+ kevin_toolbox/nested_dict_list/serializer/backends/_json_.py,sha256=yu3604KvzU8dKyECBQ3v127dsEr-VaRz0Mm4dBJgNfc,2189
260
266
  kevin_toolbox/nested_dict_list/serializer/backends/_ndl.py,sha256=3YkAq_Bqzehnw0kGxqxwtF6uUz0EV37tLI-1ROHjixY,1794
261
267
  kevin_toolbox/nested_dict_list/serializer/backends/_numpy_bin.py,sha256=xiPFmPUTjy0X0R1E0N8mrByENhNb69QalHnbYQXFvTo,1470
262
268
  kevin_toolbox/nested_dict_list/serializer/backends/_numpy_npy.py,sha256=CF6R7ie68zA0TqAXBdxUgHKVDYtEPHfVXR9rMFBbsdw,1384
@@ -272,26 +278,38 @@ kevin_toolbox/nested_dict_list/value_parser/eval_references.py,sha256=YQyOm3awKV
272
278
  kevin_toolbox/nested_dict_list/value_parser/parse_and_eval_references.py,sha256=RQEDFFNAhQQcX9H8curwja-pI2gKZlVx4M2qeneBOhA,2370
273
279
  kevin_toolbox/nested_dict_list/value_parser/parse_references.py,sha256=G470xNzrRpYlS5To8R5yV0M6nX4iE5LLMp_eV49bh3Y,2116
274
280
  kevin_toolbox/nested_dict_list/value_parser/replace_identical_with_reference.py,sha256=4nd5q3qTi4sTfOqHF0-HyLMDS9a5x8wgwETfpDI8jh8,5419
281
+ kevin_toolbox/network/__init__.py,sha256=wOY_SKvbxzIIH_OFccMw3-LVUwZQwz8BTb82ht88JHA,346
282
+ kevin_toolbox/network/download_file.py,sha256=hW6DbdKPWcVqkG8U7NK2bwwubPtmaPHp3ftfuAjMNgI,6896
283
+ kevin_toolbox/network/fetch_content.py,sha256=WjpwZ_7pyfrAAmxNyHMu3onkbucELnHKYXDBM1fSSEY,2167
284
+ kevin_toolbox/network/fetch_metadata.py,sha256=I_0fzm9A8HHFXGsdGZnvYUDd2hIPcjpacB00gEa9_HI,2742
285
+ kevin_toolbox/network/get_response.py,sha256=pNOi4IgAiXEH7QzNdyVEVo6lfIkOrurgnV1EgAbaBz8,2166
286
+ kevin_toolbox/network/variable.py,sha256=R-gKgG1PRV1MnL1ApsQXKBqDt6YbM87xNGkCf_gUUCM,237
275
287
  kevin_toolbox/patches/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
276
288
  kevin_toolbox/patches/for_logging/__init__.py,sha256=xymF6mjwY4Cin7CoEwanFY5ZVk8oY0pDLqjZAGa7_Rg,39
277
- kevin_toolbox/patches/for_logging/build_logger.py,sha256=0UoRMKaERd8wlHGTiNR3dbLQRAtXcb0QZuGkX2oFgGo,3071
289
+ kevin_toolbox/patches/for_logging/build_logger.py,sha256=TpIjkz6Qr6gSLAz-xg_9LqNO0O_rfufBfy4pswDxpkg,3082
278
290
  kevin_toolbox/patches/for_matplotlib/__init__.py,sha256=Pr9jXGomD3wBvtKE8p9V7rKDY4YBLAP5ayWEuBbDdk4,182
279
291
  kevin_toolbox/patches/for_matplotlib/add_trajectory_2d.py,sha256=mKXRUNJiEZBcff3pAkwL_gcKGn55CLRhYCTSd3fj1Go,1837
280
292
  kevin_toolbox/patches/for_matplotlib/add_trajectory_3d.py,sha256=VGlZfVY0xhUBOUzWJVPxZZNHHRvWLR0HZzhADA_cbsU,1696
281
293
  kevin_toolbox/patches/for_matplotlib/arrow3d.py,sha256=JSnNMr1hU2N4FUX526I4MDr04mksDgu4VuegYFDxk1Q,1361
282
294
  kevin_toolbox/patches/for_matplotlib/clear_border_of_axes.py,sha256=aQtzrw4W-DUffvwTqsA9Ez7b_vj-C58ROE_UcCKIawQ,725
295
+ kevin_toolbox/patches/for_matplotlib/variable.py,sha256=oJ0E8YEhnRMd0HmWKi3X56-m7sZ2ROlOnGOkyFTHUrU,645
283
296
  kevin_toolbox/patches/for_matplotlib/color/__init__.py,sha256=5VGALqLCFsGqBWrOnFouVxkpp_DfqMIcKDLzYPdOTy8,170
284
297
  kevin_toolbox/patches/for_matplotlib/color/color_format.py,sha256=ADwKfPmryxOuN691ol_2djOIkGQGJcnUAcqE3pbxGJs,205
285
298
  kevin_toolbox/patches/for_matplotlib/color/convert_format.py,sha256=fmFwirEqF2OXuH3qiQD_vCTUBqsqDIDR6F62mIX5XmU,4040
286
299
  kevin_toolbox/patches/for_matplotlib/color/generate_color_list.py,sha256=TZm-TkOuJbFzJ0_RklliQ9SHjMUhJvjbu7DUJGtgvw0,1993
287
300
  kevin_toolbox/patches/for_matplotlib/color/get_format.py,sha256=l_vX8DUsWHNzLwveuF60TLcbQ_P7PvVt1yH_7FjElDs,312
288
- kevin_toolbox/patches/for_matplotlib/common_charts/__init__.py,sha256=etey2r0LO4PTLnH3VzcRKFe7IHP9I5TMW3DEz3sQx2c,270
289
- kevin_toolbox/patches/for_matplotlib/common_charts/plot_bars.py,sha256=crS1h79Dz6gGOnqhjuuN2o5pl8CekhCenx9lRz5KPiI,1887
290
- kevin_toolbox/patches/for_matplotlib/common_charts/plot_confusion_matrix.py,sha256=KtmUAlKs3_ALFRKAEi0OAXj6SyG5L7LMmoSgOxKvvVs,3213
291
- kevin_toolbox/patches/for_matplotlib/common_charts/plot_distribution.py,sha256=stuyaULWM_vVW3r9WrpzGqA8rohQrdNKT3Agsbobqck,2396
292
- kevin_toolbox/patches/for_matplotlib/common_charts/plot_lines.py,sha256=j2GBT_E9tvQhLN2ynCknuBl1MjD6q2TZeNYGvm2IVRA,2034
293
- kevin_toolbox/patches/for_matplotlib/common_charts/plot_scatters.py,sha256=whO36bmixjwtsjCS6Ah6zEGJAlJyGcD-wmV3dA6u7mk,1658
294
- kevin_toolbox/patches/for_matplotlib/common_charts/plot_scatters_matrix.py,sha256=bf2EfGlPW9dtDfRse1gk8RVxvC8CJ0NeMdrpSw43wFg,1989
301
+ kevin_toolbox/patches/for_matplotlib/common_charts/__init__.py,sha256=cxQT-iA6JdWqPqoXvw535_8_zJWZr0Mqr3Ln7oV2awo,2024
302
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_bars.py,sha256=7XVNnRc6o1w911XGE-ATZGX0wr_9moB3gZGEW-8_Qao,4436
303
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_confusion_matrix.py,sha256=cfZQu9M2IkA0qrEy4QJda4_yGENDSg2BVk8lQ5YIAi0,6456
304
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_distribution.py,sha256=hmGQYeTMF9ZCBIyporxQi1xc8yuHb8vai8WvR_i3nxE,5856
305
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_from_record.py,sha256=LJ5bySLIP8Q6-lI3ibk7rRsgdP4Y6oKIQYuo5-wOw4M,756
306
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_lines.py,sha256=aXnhOV2Tnxc0VnqPR3qcENBFVxFof7Oxm5oKVJph_5w,5066
307
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_scatters.py,sha256=ouypSDAkrGwI9ZpDFs7xqYgOS3dTZLDeZr68h-ceDh0,4719
308
+ kevin_toolbox/patches/for_matplotlib/common_charts/plot_scatters_matrix.py,sha256=PTFYaLu_0w1T66p_PP0rK-q1oqNgek-Nto-ILWbawIc,4848
309
+ kevin_toolbox/patches/for_matplotlib/common_charts/utils/__init__.py,sha256=mI06j19Yk8-6ksAc_OjhXudse7gbkz1dS4-lvmj85FI,115
310
+ kevin_toolbox/patches/for_matplotlib/common_charts/utils/get_output_path.py,sha256=lHd5unN5nsu7Msqnct5cSn_6Ib3uZUaExpI7qvndE7U,614
311
+ kevin_toolbox/patches/for_matplotlib/common_charts/utils/save_plot.py,sha256=Qi-gOeQzhdPT90pgU3-vlBoJ3gi10Yf3y95tS3WqHrM,290
312
+ kevin_toolbox/patches/for_matplotlib/common_charts/utils/save_record.py,sha256=mZSVGn9om0Qzi2gGiWwlFDUSLu7RgSGtkae0T16UOSk,1332
295
313
  kevin_toolbox/patches/for_numpy/__init__.py,sha256=SNjZGxTRBn-uzkyZi6Jcz-9juhhZKT8TI70qH-fhGGc,21
296
314
  kevin_toolbox/patches/for_numpy/linalg/__init__.py,sha256=TH-M0Orrakyf9S9A8FiDf3zLHY24gP2SGGTuNmLhDP4,128
297
315
  kevin_toolbox/patches/for_numpy/linalg/cos_similar.py,sha256=bFkfDwrW3maXq5i9ZABidKfg8ZdEdXfFgNzW_uygrM4,423
@@ -354,7 +372,7 @@ kevin_toolbox/patches/for_torch/nn/__init__.py,sha256=aJs3RMqRzQmd8KKDmQW9FxwCqS
354
372
  kevin_toolbox/patches/for_torch/nn/lambda_layer.py,sha256=KUuLiX_Dr4bvRmpAaCW5QTDWDcnMPRnw0jg4NNXTFhM,223
355
373
  kevin_toolbox/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
356
374
  kevin_toolbox/utils/variable.py,sha256=PxUmp9w4CKKcKHjgdVNF_Iaw5gwPPOd4aY_Oe5F9U1M,133
357
- kevin_toolbox_dev-1.4.6.dist-info/METADATA,sha256=G-yjDl5MP56GAhXAoPnGcqJPGqpuUiSt4X4B90dsP7c,2578
358
- kevin_toolbox_dev-1.4.6.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
359
- kevin_toolbox_dev-1.4.6.dist-info/top_level.txt,sha256=S5TeRGF-PwlhsaUEPTI-f2vWrpLmh3axpyI6v-Fi75o,14
360
- kevin_toolbox_dev-1.4.6.dist-info/RECORD,,
375
+ kevin_toolbox_dev-1.4.8.dist-info/METADATA,sha256=zU01ztqZ4i6kXd1jGnRN0O9SYsFZqH6xedYmXa6MpjA,3545
376
+ kevin_toolbox_dev-1.4.8.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
377
+ kevin_toolbox_dev-1.4.8.dist-info/top_level.txt,sha256=S5TeRGF-PwlhsaUEPTI-f2vWrpLmh3axpyI6v-Fi75o,14
378
+ kevin_toolbox_dev-1.4.8.dist-info/RECORD,,
@@ -1,76 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: kevin-toolbox-dev
3
- Version: 1.4.6
4
- Summary: 一个常用的工具代码包集合
5
- Home-page: https://github.com/cantbeblank96/kevin_toolbox
6
- Download-URL: https://github.com/username/your-package/archive/refs/tags/v1.0.0.tar.gz
7
- Author: kevin hsu
8
- Author-email: xukaiming1996@163.com
9
- License: MIT
10
- Keywords: mathematics,pytorch,numpy,machine-learning,algorithm
11
- Platform: UNKNOWN
12
- Classifier: License :: OSI Approved :: MIT License
13
- Classifier: Programming Language :: Python
14
- Classifier: Programming Language :: Python :: 3
15
- Requires-Python: >=3.6
16
- Description-Content-Type: text/markdown
17
- Requires-Dist: torch (>=1.2.0)
18
- Requires-Dist: numpy (>=1.19.0)
19
- Provides-Extra: plot
20
- Requires-Dist: matplotlib (>=3.0) ; extra == 'plot'
21
- Provides-Extra: rest
22
- Requires-Dist: pytest (>=6.2.5) ; extra == 'rest'
23
- Requires-Dist: line-profiler (>=3.5) ; extra == 'rest'
24
-
25
- # kevin_toolbox
26
-
27
- 一个通用的工具代码包集合
28
-
29
-
30
-
31
- 环境要求
32
-
33
- ```shell
34
- numpy>=1.19
35
- pytorch>=1.2
36
- ```
37
-
38
- 安装方法:
39
-
40
- ```shell
41
- pip install kevin-toolbox --no-dependencies
42
- ```
43
-
44
-
45
-
46
- [项目地址 Repo](https://github.com/cantbeblank96/kevin_toolbox)
47
-
48
- [使用指南 User_Guide](./notes/User_Guide.md)
49
-
50
- [免责声明 Disclaimer](./notes/Disclaimer.md)
51
-
52
- [版本更新记录](./notes/Release_Record.md):
53
-
54
- - v 1.4.6 (2025-01-24)【new feature】
55
-
56
- - data_flow.file
57
- - modify json_.read(),支持输入路径使用 ~ 表示家目录。
58
- - 【new feature】add excel,该模块用于 excel 表格处理。
59
- - write_with_matrix():将矩阵写入到 excel 文件中
60
-
61
- - patches.for_os
62
- - modify find_files_in_dir(),支持 suffix_ls 设定 None 以表示不进行任何过滤。
63
- - 【new feature】add organize,该模块用于文件整理。
64
- - group_files_by_timestamp():将 input_dir 中的文件按照时间戳信息进行分组,输出到 output_dir 中。
65
- - 添加了对应的测试用例。
66
- - env_info
67
- - 【new feature】add check_validity_and_uninstall(),检查当前机器时间是否超过 expiration_timestamp 指定的有效期,若超过则卸载 package_name 对应的库。
68
- - 【new feature】add check_version_and_update(),检查当前库的版本,并尝试更新。
69
- - 以上函数均系从同名脚本中抽取出来。
70
- - 以上修改,均已添加了对应的测试用例。
71
- - developing
72
- - 【new feature】add photo_album_organization,该模块包含一系列整理相册相关的脚本。
73
- - 0_group_by_timestamp.py :按照时间戳分组
74
- - 1_merge_folders.py :将文件数量较少的目录合并
75
-
76
-