Angenommen, ich habe das Folgende in test.lua
Datei:Wie rufen Sie eine Torch .Lua-Datei mit neuen/anderen Argumenten auf?
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
Jetzt nehme ich will test.lua
einige verschiedene Argumente durch eine andere lua Datei execute.lua
gegeben nennen:
dofile ('test.lua -visualize 0') --Gives an error
Aber ich bin immer ein Fehler, der anzeigt, dass die Datei 'test.lua -visualize 0' nicht gefunden wird, wenn versucht wird, die Funktion über execute.lua
aufzurufen.
Also, wie kann ich eine andere lua-Datei, die Fackel-Code enthält, durch eine andere .lua-Datei korrekt ausführen?
welche Fehler? 'dofile' akzeptiert keine Kommandozeilenargumente. Wenn Sie eine "Datei" aufrufen wollen, gibt es dafür Funktionen und 'Loadfile'. – Jakuje
Der Fehler zeigt an, dass die Datei 'test.lua -visualize 0' nicht gefunden wurde. – Amir
Und warum ist es nicht in der Frage? Immerhin gilt der andere Teil meines Kommentars. Sie sollten Funktionen verwenden. – Jakuje