首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ipython-记事本的标记单元中展开变量

在ipython-记事本的标记单元中展开变量
EN

Stack Overflow用户
提问于 2014-01-26 13:39:54
回答 2查看 9.4K关注 0票数 9

在IPython-记事本中的标记单元格中,我希望能够自动展开变量。这能办到吗?

作为一个示例,请考虑以下代码

代码语言:javascript
复制
from IPython.core.display import HTML
from markdown import markdown

base_url = "https://stackoverflow.com/"
markdown_string = "Two categories at [stackoverflow]({0}) are "\
                  "[ipython-notebook]({0}questions/tagged/ipython-notebook) and "\
                  "[matplotlib]({0}questions/tagged/matplotlib).".format(base_url)
HTML("<p>{}</p>".format(markdown(markdown_string)))

这将生成链接正确的输出单元格,所有链接都相对于base_url,如

堆栈过流的两个类别是ipython-笔记本matplotlib

我想要的是能够直接在单元格中键入标记,引用一个预定义的变量。这个是可能的吗?

EN

回答 2

Stack Overflow用户

发布于 2014-08-22 05:38:32

虽然现在还不可能使用真正的Markdown单元,但是您可以很容易地创建一个魔法来获得同样的效果。

代码语言:javascript
复制
from __future__ import absolute_import
from IPython.core.getipython import get_ipython
from IPython.core.magic import (Magics, magics_class,  cell_magic)

@magics_class
class MarkdownMagics(Magics):

    @cell_magic
    def markdown(self, line, cell):
        from IPython.core.display import HTML
        from markdown import markdown

        vars = line.split()

        d = {}
        for k, v in self.shell.user_ns.items():
            if k in vars:
                d[k] = v

        return HTML("<p>{}</p>".format(markdown(cell.format(**d))))

get_ipython().register_magics(MarkdownMagics)

设置一些变量

代码语言:javascript
复制
foo = 1
bar = 2

然后调用魔术,参数是要从名称空间中获取的变量。

代码语言:javascript
复制
%%markdown foo bar

Substitute _{foo}_ and *{bar}*
票数 8
EN

Stack Overflow用户

发布于 2015-05-15 18:26:40

正如@Jakob在评论中回答的那样,实现这一点的最简单方法是安装python-标记 IPython笔记本扩展,就像wiki页面上描述的那样。

然后,您可以通过在变量周围加上花括号来访问您的变量:

Python单元:

代码语言:javascript
复制
x = 1000

标记单元:

代码语言:javascript
复制
Insert variable contents here -> {{x}}.

标记单元格被解析为:

代码语言:javascript
复制
Insert variable contents here -> 1000.
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21364102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档