%reset后重新加载自动导入

0 投票
1 回答
657 浏览
提问于 2025-04-17 17:20

如果我的IPython会话运行时间太长(可以查看这个帖子上的评论),我就会想要用exit()命令退出并重启IPython,这样可以释放被会话中的所有变量占用的内存。不过,重启会浪费一些宝贵的时间,这让我觉得很烦(虽然我可以习惯,但其实不应该这样)。

我发现了一个神奇的命令%reset,它可以清除我所有的变量(太棒了!),但同时也会清除我在命名空间中导入的所有名称。这些名称包括在~/.ipython/profile_default/startup/00-imports.py中定义的自动导入,这些是我希望在IPython会话开始时自动执行的导入。

有没有办法让我重新运行这些导入(有点像bash中的source命令);或者更好的是,有没有一种%reset的版本,可以清除我的变量,但不清除导入的内容?

技术细节

  1. IPython版本:0.13.1
  2. 操作系统:MAC OS X 10.7.5(狮子系统)

1 个回答

0

定义你自己的魔法函数来

  • 调用重置
  • 重新导入你的模块

你可以把它叫做

%deset

或者类似的名字。

你需要学习如何做到这一点的所有信息都在这里

撰写回答