假设我想使用jupiter notebook / ipython作为开发环境,然后将所有内容复制到python脚本中。在ipython中,我们有像
这样的命令In [1]: cd ..
/Users/myname/Desktop/software
In [2]: ls
blah_blah_blah/
假设我完成了我的ipython笔记本并希望复制所有内容(假设我有1000行,我无法逐个编辑它们)来创建我的python脚本。是否可以让我的python脚本理解像“cd ..”等行。
答案 0 :(得分:3)
使用标准 Python解释器运行IPython代码的任何方法都会有点复杂。例如,请参阅this问题,其中一个答案说明了调用IPython执行shell命令的“魔术”方法:
from IPython.terminal.embed import InteractiveShellEmbed
ipshell = InteractiveShellEmbed()
ipshell.dummy_mode = True
ipshell.magic("%timeit abs(-42)")
更容易的选择是简单地使用IPython解释器来运行您保存的脚本。您需要确保每个shell命令前面都有%
,因为这表示“魔术”命令。应该是一个简单的查找和替换任务,因为我怀疑你使用了太多的shell命令。如果有许多不同的shell命令以%
为前缀,您还可以编写一个简短的脚本来为您完成此工作。您还需要确保您的脚本具有扩展名.ipy
。
<强> script.ipy:强>
%cd ..
%ls
x = "My script!"
print(x)
从终端运行脚本:
>>> ipython script.ipy