我想寫一個腳本來自動設置一個全新的ubuntu安裝並安裝一個基於django的應用程序。由於該腳本將在新服務器上運行,Python腳本需要自動安裝一些必需的模塊。如何在運行時安裝和導入Python模塊?
這是腳本。
#!/usr/bin/env python
import subprocess
import os
import sys
def pip_install(mod):
print subprocess.check_output("pip install %s" % mod, shell=True)
if __name__ == "__main__":
if os.getuid() != 0:
print "Sorry, you need to run the script as root."
sys.exit()
try:
import pexpect
except:
pip_install('pexpect')
import pexpect
# More code here...
的pexpect
安裝是成功的,但下一行import pexpect
失敗。我認爲它是因爲在運行時代碼不知道新安裝的pexpect
。
如何在運行時安裝和導入Python模塊?我接受另一種方法。
未經測試:'Pexpect的= __import __( 'Pexpect的')' –