我正在使用Jupyter Notebook,并且正在尝试根据Github上的模板创建一个小部件。
模板在某些时候使用了魔法%%javascript
。这可以直接粘贴在笔记本电脑的单元格中。
但是当我尝试从小部件中创建一个函数时,使用%%javascript
表达式会使它返回错误:
%%javascript SyntaxError: invalid syntax
任何人都知道如何“转换”magic命令,以便可以在函数内正确调用它(该函数保存在单独的文件中)
答案 0 :(得分:6)
如果你使用?
IPython内置,你可以看到魔法的路径。例如,%%javascript?
表示它位于lib\site-packages\ipython\core\magics\display.py
然后您可以将其导入并将其用作标准;例如,如果您从笔记本中运行它,则会弹出一个警告框:
from IPython.core.magics.display import Javascript
Javascript('alert("hello world")')
编辑:要获得您在评论中发布的示例,只需将您想要在引号中运行的Javascript包装起来并使用Javascript
进行调用。用这个替换In[4]
会弹出正常的窗口,并且可以包含在普通的Python函数中。
from IPython.core.magics.display import Javascript
Javascript("""$('div.inspector')
.detach()
.prependTo($('body'))
.css({
'z-index': 999,
position: 'fixed',
'box-shadow': '5px 5px 12px -3px black',
opacity: 0.9
})
.draggable();""")