问题标签 [ipython-magic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1041 浏览

ipython - 从 Python 模块安装 IPython 魔术函数

我为我的学生编写了一些 IPython 魔术函数,我想使用 easy_install 安装它们。到目前为止,我发现的唯一方法是将 python 文件复制到配置文件目录,但是当我这样做时,easy_install 会抱怨 SandboxViolation。

有没有办法通过 setuptools 安装魔法功能?

0 投票
7 回答
36356 浏览

python - 运行 IPython 笔记本时如何(间歇性地)跳过某些单元格?

重新打开笔记本时,我通常必须重新运行(大部分)笔记本,以便访问先前定义的变量并继续工作。

但是,有时我想跳过一些对后续单元格没有影响的单元格(例如,它们可能包含已完成的分析分支)并且可能需要很长时间才能运行。这些单元格可以分散在整个笔记本中,因此“Run All below”之类的内容不会有太大帮助。

有没有办法做到这一点?

理想情况下,这些单元格可以用一些特殊标志标记,以便它们可以手动“运行”,但在“全部运行”时会被跳过。

编辑

%%cache@Jakob 建议的(ipycache 扩展)在一定程度上解决了这个问题。

实际上,我什至不需要在重新运行时加载任何变量(可能很大,但对于后续单元格来说是不必要的),只有存储的输出对分析结果很重要。

作为一种解决方法,将其放在%%cache folder/unique_identifier单元格的开头。代码将只执行一次,重新运行时不会加载任何变量,除非您删除 unique_identifier 文件。

不幸的是,当重新运行时,所有的输出结果都丢失了%%cache......

编辑二(2013 年 10 月 14 日)

ipython+ipycache 的主版本现在也腌制(并重新显示)codecell 输出。

对于包括 Latex、HTML(pandas DataFrame 输出)在内的丰富显示输出,请记住使用 IPython 的 display() 方法,例如,display(Latex(r'$\alpha_1$'))

0 投票
7 回答
38995 浏览

ipython-notebook - 我可以在 `%%bash` 或 `%%script` ipython notebook 单元格中访问 python 变量吗?

有没有办法从一个%%bash或其他%%script单元格中访问当前 python 内核中的变量?

也许作为命令行参数或环境变量?

0 投票
1 回答
118 浏览

python - 使用 python-magic 库时如何添加新类型的文件?

我需要使用 python 库来识别文件类型,在阅读了关于这个主题的帖子之后,python-magic似乎就是我正在寻找的东西。但是,我在文档中找不到使用此库时如何添加新类型的文件?

有一组默认的文件类型 - 例如 pdf、文本等,但我需要能够识别比这更多的类型。谢谢!

0 投票
1 回答
200 浏览

python-3.x - 从命令行运行脚本时更新 IPython 命名空间

在 Ipython 0.10 中,可以从命令行运行脚本,然后从交互模式,立即访问命名空间中的名称:

我现在使用 Python 3.3.2 和 IPython 1.1.0。在某个地方,这种行为发生了变化。现在我得到:

我现在必须启动 IPython,然后 %run 脚本以保留命名空间:

是否有命令行选项或技术会给我旧行为?我试过了

但这也不起作用。

我知道,这是一件懒惰的事情,但是少一步可以加快调试速度。

0 投票
1 回答
149 浏览

ipython - 从 iPython 内核捕获语法错误

在进程内 ipython 内核上连接、运行、显示、显示错误的方法是

我不得不装饰 run_code 以捕获其结果并将其设置为 self,因为 _get_exc_info 返回相同的错误,直到发生另一个错误,因此没有其他方法可以查看是否发生错误。如果有人有更好的方法,我想听听。

0 投票
1 回答
3770 浏览

python - 如何在 IPython 笔记本中显示包函数的源代码

出于教学目的,我想要一个显示(作为单元格的输出)函数源代码的 IPython 笔记本,但我希望能够在多个笔记本中引用它。因此,我想以与使用%psource魔术类似的方式显示函数代码,但适当地突出显示语法。

这是与此问题类似的问题,但我希望能够将其应用于文件中的单个函数,而不是一次应用于整个文件。

使用上一个问题的建议,我破解了一个在简单情况下有效的短代码:

两个问题:

  1. 这个要点表明,可以通过定义适当的细胞魔法来显示整个功能。如上所述,是否可以定义适当的单元格魔术来仅显示单个功能?
  2. 有没有一种方法可以在不导入整个模块的情况下做到这一点,或者有一种更强大的方法来做到这一点?
0 投票
3 回答
14514 浏览

python - 将 Ipython 魔术输出管道传输到变量?

我想在我的 ipython Notebook 中运行一个 bash 脚本,并将输出作为字符串保存在 python 变量中以供进一步操作。基本上我想将 bash 魔法的输出通过管道传递给一个变量,例如这样的输出:

0 投票
1 回答
139 浏览

ipython-notebook - 缺少 Ipython 细胞魔法

在 ipython 笔记本中,当我运行 %lsmagic 时,我得到:

我期待看到:

可用的细胞魔法:%%!%%HTML %%SVG %%bash %%capture %%debug %%file %%html %%javascript %%latex %%perl %%prun %%pypy %%python %%python3 %%ruby %%script %% sh %%svg %%sx %%system %%time %%timeit %%writefile

(来自http://nbviewer.ipython.org/github/ipython/ipython/blob/master/examples/notebooks/Cell%20Magics.ipynb

我的 python 版本是 2.7.4,我的 Ipython 版本是 0.13.2。我也在 Ubuntu 上这样做。如何更新我的 ipython 魔法?

0 投票
1 回答
277 浏览

ipython - 从后台子进程的 Ipython notebook 中的 Cell Magic 中检索 python 变量

我正在尝试使用 ipython notebook 对我的 mongodb 数据库进行快速而肮脏的查询。

我有几个单元格,每个单元格都有自己的查询。由于 mongodb 可以支持多个连接,我想并行运行每个查询。我认为一个理想的方法就是做类似的事情

您可以想象几个单元格,每个单元格都有自己的查询。但是我无法访问 pymongo.find 返回的查询。

我知道这是一个在单独线程中运行的子进程,但我不知道如何访问数据,因为该进程很快被销毁并且命名空间消失了。

我在这里找到了 %%bash 的类似帖子,但我无法将其转换为 python 命名空间。