我有一个相当简单的代码,我一直得到"set::write Tag Times in npsRadSlice is protected"的错误,尽管在代码中没有真正的数学。我已经经历了许多与相同错误相关的其他问题,这些问题的解决方案似乎对我不起作用。下面是我的代码:
Clear["Global'*"]
SetDirectory["C:\Users\M\Desktop\radial_slices"]
swank = 0.9;
angle = 0;
percDev = ConstantArray[1,3];
For[zz=1,zz<4,zz++
Clear[npsRadSlice]
npsRadSlice = Import[StringJoin["slice1_",ToString[101000+zz-1],".xlsx"]];
]
我尝试了不同的调用文件的方式,但没有改变我最终得到错误消息的事实:
Set::write : Tag Times in npsRadSlice Null is protected.
Set::write : Tag Times in 2 npsRadSlice Null is protected.
Set::write : Tag Times in 3 npsRadSlice Null is protected.
General::stop : Further output of Set::write will be suppressed during this calculation.
我不明白是什么导致这个错误,当没有数学在这段代码的任何地方。你能给的任何见解都是非常感激的!
你的代码缺少一个逗号和一个分号
swank = 0.9;
angle = 0;
percDev = ConstantArray[1, 3];
For[zz = 1, zz < 4, zz++,
Clear[npsRadSlice];
npsRadSlice = 1;
]
要了解触发错误的原因,请查看以下内容。而这里
zz++
Clear[npsRadSlice]
npsRadSlice = 1
正在工作,下一个不
Module[{},
zz++
Clear[npsRadSlice]
npsRadSlice = 1
]
经验法则是:文件级别不同行上的完整表达式被视为单独的表达式。在其他情况下,存在隐式乘法。
基本上,你要做的就是像这样:
z = 2;
z*npsRadSlice = 3