julia: 如何在else中访问if中定义的变量

例如

for haha in [3,1,5,1,6,1]
    if haha > 2
        tem=Int[]
    else
        push!(tem,haha)
        println(tem)
    end
end

在for 循环中,当我使用if来判断当满足某一条件时才声明的变量,在else中无法使用,会报tem没有声明

在Python中是可以的

for haha in [3,1,5,1,6,1]:
    if haha > 2:
        tem=[]
    else:
        tem.append(haha)
        print(tem)

那么,在julia中该如何实现相同的操作呢?如果在if中声明global tem,是否会影响性能

EMM,Python那样写也不好吧,如果第一个元素是1就不行了。

tem = Int[]
for haha in [3,1,5,1,6,1]
    if haha > 2
        empty!(tem)
    else
        push!(tem,haha)
        println(tem)
    end
end

恩,是因为我的列表就是这种格式的所以才这样写的。
这的确是一个好办法,哈哈,谢谢

京ICP备17009874号-2