Lua 尝试调用全局';lapp&x27;(零值)

Lua 尝试调用全局';lapp&x27;(零值),lua,pycharm,Lua,Pycharm,我正在mac上工作,用Pycharm IDE运行lua。 使用以下参数在Pycharm上运行lua脚本时: 我的代码以: require('mobdebug').start() require 'xlua' require 'optim' require 'cunn' require 'loadcaffe' dofile './provider256.lua' local c = require 'trepl.colorize' local lfs = require 'lfs' opt =

我正在mac上工作,用Pycharm IDE运行lua。 使用以下参数在Pycharm上运行lua脚本时:

我的代码以:

require('mobdebug').start()
require 'xlua'
require 'optim'
require 'cunn'
require 'loadcaffe'
dofile './provider256.lua'
local c = require 'trepl.colorize'
local lfs = require 'lfs'

opt = lapp[[
   -s,--save                  (default "logs/nin")      subdirectory to save logs
   -b,--batchSize             (default 50)          batch size
   -r,--learningRate          (default 0.01)        learning rate
   --learningRateDecay        (default 1e-7)      learning rate decay
   --weightDecay              (default 0.0005)      weightDecay
   -m,--momentum              (default 0.9)         momentum
   --epoch_step               (default 33)          epoch step
   --model                    (default nin)     model name
   --max_epoch                (default 100)           maximum number of iterations
   --data_loc                 (default "workspace/dataset/torch")            image location
   --trainData                (default "workspace/dataset/torch/train.txt")  train.txt location
   --testData                 (default "workspace/dataset/torch/val.txt")    val.txt location
   --image_size               (default 256)         image size
   --crop_size                (default 224)         image size after crop
   --use_pretrained           (default false)   whether to use pre-trained model
   --num_labels               (default 1000)    number of labels
   --do_aug                   (default false)   do augmentation or not
   --max_label                (default -1)      label with maximum occurences to subsample
   --max_2max_ratio           (default -1)      ratio of maximum label to subsample and 2nd maximum label
   --pretrained_model_loc     (default none)    location of the pre-trained model
]]

print(opt)
print(lfs.currentdir())
我得到了一个错误:

/imcnn/train256.lua:31: attempt to call global 'lapp' (a nil value)

为什么会发生这种情况?

错误信息非常清楚

这是因为
lapp
是一个
nil
值,您试图在第31行调用它

lapp
如果要在全局范围内调用,则必须是全局函数

你很可能忘了在这里要些东西

快速的网络搜索表明lapp是penlight库的一部分

我发现一个例子,行
lapp=require'pl.lapp'
在lapp呼叫前添加这一行可能会解决您的问题