append! in for loop

请教大家一个问题,我想从一个数列b中随机抽取20个作为一个数列,然后把这个数列加到数列t中,重复20次,希望越多重复就越满足能够把所有数字都抽到的条件,如下是我的代码,这个代码应该怎么改进处理呢?

for i in 1:20
    t = append!(t, rand(1:100, 20))
    println(union(t))
end

好像没太理解你提问的重点是啥?

let t = Vector();
    for i in 1:20
        t = append!(t, rand(1:100, 20))
        println(union(t))
    end
end
1 个赞

但是您解答了,非常感谢,就是这个意思,对于给定的数列,越多次取样就越能够把所有的数字都取到,我是错在了Vector上,我没有使用Vector,而是使用了t=[]。

直接用数列 t = [] 也没问题。

是的:grinning:谢谢

请问这个let有什么用呢,就是加个代码块吗?

感觉就是global的区别,let了就不用global了啊。不然在循环里面识别不出来t。