2016-04-08 60 views
0

假設我有test.lua文件如下:給出新的/不同的參數如何調用Torch .lua文件?

require 'torch' 
-- parse command line arguments 
if not opt then 
    print '==> processing options' 
    cmd = torch.CmdLine() 
    cmd:text() 
    cmd:text('SVHN Model Definition') 
    cmd:text() 
    cmd:text('Options:') 
    cmd:option('-model', 'convnet', 'type of model to construct: linear | mlp | convnet') 
    cmd:option('-visualize', 1, 'visualize input data and weights during training') 
    cmd:text() 
    opt = cmd:parse(arg or {}) 
end 

if opt.visualuze == 0 then 

-- Do something 

現在假設我想打電話給test.lua通過另一LUA文件execute.lua給予一定不同參數:

dofile ('test.lua -visualize 0') --Gives an error 

不過,我得到一個錯誤,指示在試圖通過execute.lua調用函數時找不到文件'test.lua -visualize 0'。

那麼,我怎樣才能正確運行另一個lua文件,其中包含火炬代碼通過另一個.lua文件?

+0

什麼錯誤? 'dofile'不接受命令行參數。如果你想調用一些「文件」,那麼有一些函數和'loadfile'。 – Jakuje

+0

該錯誤表示找不到文件'test.lua -visualize 0'。 – Amir

+0

爲什麼它不在問題中?我的評論的另一部分仍然適用。你應該使用函數。 – Jakuje

回答

0

如果您不需要使用自己的「test.lua」裏面定義的變量,你可以使用os.execute:

os.execute("th test.lua -visiualize 0") 
相關問題