我是 Julia 的新手。如果可以在一行中写一个 if
语句在 Julia 中的数组或集合中,我正在徘徊。
例如在python中我可以写一个列表,比如
s = [1 if np.random.uniform() < 0.5 else 0 for i in range(10)]
在 Julia 中,如果我是对的,应该是这样的数组
s = []
for i in 0:10
if rand()<0.5
push!(s, 1)
else
push!(s, 0)
end
end
我知道我可以在一行中编写 for
循环,即
s =[1 for i in 1:10]
但是 if..else
语句呢?
最佳答案
正如@Guido 建议的那样,您可以像 python 一样使用列表推导,更具体地说:
s = [if rand() < 0.5 1 else 0 end for i in 1:10]
请注意,julia 的 if-else 语句需要一个 end
。我认为这与使用 map
:
map(x -> rand() < 0.5 ? 1 : 0, 1:10)
关于python - 使用 julia 的数组或条件评估集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35865236/