簡體   English   中英

從Bash導入Python模塊

[英]Importing Python module from Bash

我在Linux下從命令行(Bash)啟動Python腳本。 我需要打開Python,導入一個模塊,然后解釋代碼行。 然后控制台必須保留在Python中(不要退出)。 我怎么做?

我嘗試過像這樣的別名:

alias program="cd /home/myname/programs/; python; import module; line_of_code"

但這只會啟動python並且命令不會執行(沒有模塊導入,沒有處理代碼行)。

如果我需要在腳本執行后保持Python打開(不退出),那么這樣做的正確方法是什么? 非常感謝!

使用子例程而不是別名

callmyprogram(){
  python -i -c "import time;print time.localtime()"
}
callmyprogram

一個簡單的方法是使用“代碼”模塊:

python -c "import code; code.interact(local=locals())"

當調用code.interact()時,這將使您進入交互式shell。 要進行interactlocal關鍵字參數用於預先填充創建的解釋器的默認命名空間; 我們將使用locals() ,它是一個內置函數,它將本地名稱空間作為字典返回。

你的命令看起來像這樣:

python -c "import mymodule, code; code.interact(local=locals())"

這會讓你進入一個擁有正確環境的翻譯。

例:

python -c "import time ; print 'waiting 2 sec.'; time.sleep(2); print 'finished' "

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM