我需要執行在其中有一個variable.In系統命令下面將字符串「user.wav」變量在python
os.system('SMILExtract -C config/demo/demo1_energy.conf -I user.wav -O csv/user.csv')
代碼用作OS命令, 用戶是可變字符串,的.wav是恆定string.How可以使用os.system()命令
我需要執行在其中有一個variable.In系統命令下面將字符串「user.wav」變量在python
os.system('SMILExtract -C config/demo/demo1_energy.conf -I user.wav -O csv/user.csv')
代碼用作OS命令, 用戶是可變字符串,的.wav是恆定string.How可以使用os.system()命令
使用一個format字符串?
os.system('SMILExtract -C config/demo/demo1_energy.conf -I {0}.wav -O csv/user.csv'.format(somevar))
這可潔淨性和可讀性的映射出的是可以變化成不同的命名參數的事情:
cmd_template = 'SMILExtract -C {config_path} -I {wav_base}.wav -O {csv_path}'
os.system(cmd_template.format(
config_path='config/demo/demo1_energy.conf',
wav_base='user',
csv_path='csv/user.csv',
))
內包括它如果變量被命名爲user
,只需使用字符串連接:
os.system('SMILExtract -C config/demo/demo1_energy.conf -I ' + user + '.wav -O csv/user.csv')
一種方式做,這是使用的subprocess module的通話功能:
from subprocess import call
varname="test"
user=varname+str(".wav")
options="-C config/demo/demo1_energy.conf -I %s -O csv/user.csv"%(user)
call(["SMILExtract", options])
使用os.system( 'SMILExtract -C配置/演示/ demo1_energy.conf -I '+用戶+'。WAV -O CSV/user.csv')
僅供參考,通常使用['subprocess'](http://docs.python.org/3.3/library/subprocess.html)這樣的東西更好。它被設計爲替代其他幾個較老的模塊和函數,比如'os.system' –