你可以使用像sys.argv
這樣的東西來解析你的命令行參數。
import sys
import subprocess
print sys.argv
if sys.argv[1] == 'python':
subprocess.Popen([sys.argv[1], sys.argv[2]])
elif sys.argv[1] == 'notepad':
subprocess.Popen([sys.argv[1], sys.argv[2]])
結果:
>> python scratch.py python argument
['scratch.py', 'python', 'argument']
python: can't open file 'argument': [Errno 2] No such file or directory
>> python scratch.py python "argument argument2"
['scratch.py', 'python', 'argument agument2']
python: can't open file 'argument agument2': [Errno 2] No such file or directory
對於更強大的參數解析,我建議。
它應該和'pyemb「somescript.py --arg1 --arg2 arg3」'有什麼不同? – pacholik
@pacholik它是一個簡單的界面糖 - 'pyemb'旨在做一些除了運行python腳本以外的有用的東西,所以'python'只是一個接口命令。 –
所以* pyemb *不是Python解釋器?當你鍵入'pyemb python'時它應該運行*真正的Python嗎? – pacholik