有用的 IPython 魔法命令
请我喝杯咖啡☕
ipython 魔法命令是一种特殊的代码,基本上以 % 或 %% 开头,但有时!或!!:
*备忘录:
- 基本上,% 或 %% 比 ! 更有效。或者 !!所以只有当 % 或 %% 不起作用时才使用 !或者!!.
- 有些神奇命令仅适用于 % 或 !但不能使用 %% 或 !!.
- 我从未见过与 !!. 一起使用的魔法命令
- 带有 % 或 ! 的神奇命令用于一行代码。
- 带有 %% 或 !! 的魔法命令用于一个单元格(一行或多行代码)。
- ipython masic 命令可以在 ipython 和基于 ipython 的编辑器上使用,例如 google colab、jupyterlab、jupyter notebook 等
- ipython 文档并未涵盖所有魔法命令。
% 带有 unix(linux) 命令>
*对于unix(linux)命令,应该使用%,因为!有时不起作用。
- %pwd 可以显示当前目录:
%pwd # '/home/superkai'
- %ls 可以显示文件和文件夹。 *-a 还可以显示隐藏的文件和文件夹:
%ls -a # ./ ../ file1 .file2 folder1/ .folder2/
- %cd 可以改变当前目录:
%cd folder1
- %rm 可以删除(删除)文件和文件夹。 *-r 允许删除文件夹:
%rm -r file1 folder1
!git 命令>
*%git 不起作用。
1. 克隆公共或私有存储库:
*备忘录:
- % 不适用于 git 命令。
- 我的文章解释了如何使用来自 github 的 fgpat(细粒度个人访问令牌)克隆私有存储库。
- 我的文章解释了如何使用来自 github 的 pat(个人访问令牌)克隆私有存储库。
!git clone https://github.com/<usr or org>/<repo>.git </repo></usr>
!git clone https://<fgpat or pat>@github.com/<usr or org>/<repo>.git </repo></usr></fgpat>
2. 进行添加操作:
*备注:
- -a 可以暂存所有(新的、修改的、删除的)文件。
- -a(小写)不起作用。
!git add -a
3. 可能需要配置操作来添加电子邮件和用户名:
git config --global user.email "you@example.com" git config --global user.name "your name"
4. 进行提交操作。 *没有消息 -m "..." 的命令会出现错误:
!git commit -m "new"
5. 进行推送操作。 *不带 main 的命令也可以工作:
%timeit 和 %%timeit>
*备忘录:
- %timeit 适用于一行代码。
- %%timeit 适用于一个单元格(一行或多行代码)
- 您可以在 %timeit 和 %%timeit 之后设置 -r
例如%timeit -r 4 和 %%timeit -r 4 可以将重复次数从 7 更改为 4。 *您可以检查 %timeit 和 %%timeit 的更多选项(标志)。
%timeit 可以计算一行代码的平均值(average)和标准差(std),默认以合适的循环次数重复 7 次,如下所示:
%timeit sum(range(1000000)) # 21.1 ms ± 4.79 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%%timeit 可以计算一个单元格(一行或多行代码)的均值(average)和标准差(std),默认以合适的循环次数重复 7 次,如下所示:
%%timeit sum(range(1000000)) sum(range(1000000)) sum(range(1000000)) # 57.5 ms ± 1.49 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
%时间和%%时间>
*备忘录:
- %time 适用于一行代码。
- %%时间适用于一个单元格(一行或多行代码)
-
cpu 时间是用户 cpu 时间 和 系统 cpu 时间 的总和:
*备注:
- 用户cpu时间是程序在用户空间上使用cpu的时间量。 *用户空间是应用程序的内存空间。
- 系统cpu时间是程序在内核空间上使用cpu的时间量。 *内核空间是内核的内存空间,内核是操作系统的核心。
- real 是实时,即从程序开始到程序结束的时间。 *实时也称为挂钟时间或挂钟时间。
%time 可以计算一行代码的 cpu 时间和 wall(real) 时间,如下所示:
%time sum(range(1000000)) # cpu times: user 19.7 ms, sys: 0 ns, total: 19.7 ms # wall time: 19.6 ms # 499999500000
%%time可以计算一个cell的cpu时间和wall(真实)时间(一行或多行代码),如下所示:
%%time sum(range(1000000)) sum(range(1000000)) sum(range(1000000)) # CPU times: user 60.6 ms, sys: 0 ns, total: 60.6 ms # Wall time: 63.4 ms # 499999500000
以上就是有用的 IPython 魔法命令的详细内容,更多请关注其它相关文章!