2017-03-21 72 views
2

假設我想使用jupiter notebook/ipython作爲開發環境,然後將所有內容複製到Python腳本中。在IPython中我們有像我們可以在python中運行ipython命令嗎?

In [1]: cd .. 
/Users/myname/Desktop/software 

In [2]: ls 
    blah_blah_blah/ 

想我完成我的IPython的筆記本電腦,並希望所有內容複製的命令(假設我有1000行,我不能用1編輯1)創建我的Python腳本。是否可以啓用我的python腳本來理解諸如「cd ..」之類的行等。

+0

有'os'和'os.path'模塊,可以做的事情一樣'CD '。 – hpaulj

回答

2

使用標準運行IPython代碼的任何方法 Python解釋器將會有點複雜。例如,看到this問題,與說明做一個shell命令調用的IPython的「魔力」的方法問題的答案之一:

from IPython.terminal.embed import InteractiveShellEmbed 

ipshell = InteractiveShellEmbed() 
ipshell.dummy_mode = True 
ipshell.magic("%timeit abs(-42)") 

的更容易的選擇是簡單地使用IPython的解釋器來運行你保存腳本。您需要確保每個shell命令的前面都有一個%,因爲這表示一個'magic'命令。應該是一個簡單的查找和替換任務,因爲我懷疑你使用了太多的shell命令。如果有許多不同的shell命令以%作爲前綴,那麼您也可以編寫一個簡短的腳本來爲您完成這項工作。您還需要確保您的腳本的擴展名爲.ipy

script.ipy:

%cd .. 
%ls 
x = "My script!" 
print(x) 

從終端上運行腳本:

>>> ipython script.ipy 
相關問題