Lua io.write()未提供一致的行数
这是我的代码,我想在我的遗传学习算法中使用它来合并包含权重的文件 partab和enttab列表长度相等且足够长 很明显,bool1和bool2值稍后将被设置为其他值,但即使它们都设置为false,也会触发第三个if(我知道我应该使用elseif和else),但输出文本文件的长度在30534和30606之间变化 当bools设置为不总是true时,情况会发生更大的变化,但我甚至不知道是什么导致了这种变化,因为输出文档应该有一致的行数 此外,即使partab和enttab表格为常量,输出的行数也会发生变化Lua io.write()未提供一致的行数,lua,txtextcontrol,Lua,Txtextcontrol,这是我的代码,我想在我的遗传学习算法中使用它来合并包含权重的文件 partab和enttab列表长度相等且足够长 很明显,bool1和bool2值稍后将被设置为其他值,但即使它们都设置为false,也会触发第三个if(我知道我应该使用elseif和else),但输出文本文件的长度在30534和30606之间变化 当bools设置为不总是true时,情况会发生更大的变化,但我甚至不知道是什么导致了这种变化,因为输出文档应该有一致的行数 此外,即使partab和enttab表格为常量,输出的行数也会
innumber=30603
i=1
while innumber>0 do
local bool1=false
local bool2=false
if bool1 then
io.write(partab[i],"\n")
i=i+1
innumber=innumber-1
end
if (not bool1 )and bool2 then
io.write((math.random(2100000)/1000000)-1,"\n")
i=i+1
innumber=innumber-1
end
if (not bool1 )and (not bool2) then
io.write(enttab[i],"\n")
i=i+1
innumber=innumber-1
end
end
首先,感谢您的帮助正在缓冲输出。使用
io.flush()
。另一个选项是使用io。stdout:setvbuf('no')
正在缓冲输出。使用io.flush()
。另一个选项是使用io.stdout:setvbuf('no')