session_info 输出当前会话、Python 和操作系统加载的模块的版本信息。
项目描述
session_info
session_info
输出当前会话、Python、操作系统和CPU加载的模块的版本信息。它设计为一种最小措施,以增加可重复性,并提供类似于 R 中的 sessionInfo
和 devtools::session_info
的信息。
动机
session_info
在进行 Jupyter 笔记本中的探索性数据分析时特别有用。在导入模块后列出所有加载模块的版本号是一种确保最小可重复性的简单方法,同时需要很少的额外努力。这种方法在重新访问笔记本以及与同事分享时都很有用。 session_info
意在补充更健壮的做法,如冻结虚拟环境、容器和 binder。
安装
session_info
可以通过 pip install session_info
安装。由于它从模块的版本字符串中获取版本号,因此它不依赖于包管理器来查找版本号。它的唯一依赖项是 stdlib_list
,用于区分标准库和第三方模块。
使用
session_info
可以像这样从脚本中使用
import math
import natsort
import pandas
import session_info
session_info.show()
输出
Session information:
-----
natsort 7.1.1
pandas 1.2.2
session_info 1.0.0
-----
IPython 7.23.0
jupyter_client 6.1.12
jupyter_core 4.7.1
-----
Python 3.9.2 | packaged by conda-forge | (default, Feb 21 2021, 05:02:46) [GCC 9.3.0]
Linux-5.11.13-arch1-1-x86_64-with-glibc2.33
-----
Session information updated at 2021-05-06 09:59
默认行为是仅输出不在标准库中的模块,这就是为什么上面的 math
模块被省略了(可以通过指定 std_lib=True
来包含它)。要包括不仅显式导入的模块,还包括它们内部导入的任何依赖项,请指定 dependencies=True
。
当从 Jupyter Notebook 调用 session_info
时,输出被隐藏在 <details>
标签中,并且只有当点击时才会显示。由于这节省了视觉空间,因此默认情况下将包括所有作为依赖项间接导入的模块,看起来像这样
点击查看会话信息
----- natsort 7.1.1 pandas 1.2.2 session_info 1.0.0 -----
点击查看作为依赖项导入的模块
backcall 0.2.0 cython_runtime NA dateutil 2.8.1 decorator 5.0.7 ipykernel 5.5.3 ipython_genutils 0.2.0 jedi 0.18.0 numpy 1.20.2 parso 0.8.2 pexpect 4.8.0 pickleshare 0.7.5 prompt_toolkit 3.0.18 ptyprocess 0.7.0 pygments 2.8.1 pytz 2021.1 six 1.15.0 storemagic NA tornado 6.1 traitlets 5.0.5 wcwidth 0.2.5 zmq 22.0.3
----- IPython 7.23.0 jupyter_client 6.1.12 jupyter_core 4.7.1 ----- Python 3.9.2 | packaged by conda-forge | (default, Feb 21 2021, 05:02:46) [GCC 9.3.0] Linux-5.11.13-arch1-1-x86_64-with-glibc2.33 ----- Session information updated at 2021-05-06 09:59
如果您希望在不使用 HTML 标签的情况下显示会话信息,您可以在笔记本中使用 session_info.show(html=False)
来获取与上面第一个例子相同的输出。
session_info
还可以将模块依赖写入 requirements.txt
文件,该文件与 pip install -r /path/to/requirements.txt
兼容。
背景
session_info
是从对 py_session
的微小修改开始的,随着它的发展,创建一个新包变得方便。 session_info
是在 stackoverflow 答案和现有类似包的帮助下构建的,包括
项目详情
session_info-1.0.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3cda5e03cca703f32ae2eadbd6bd80b6c21442cfb60e412c21cb8ad6d5cbb6b7 |
|
MD5 | 5d6965233cacab00d22e6828f3eceafe |
|
BLAKE2b-256 | 94e4ea615bb8185a298b21df1ac52a4a5db4e3351823a218f47ef3f883def88c |