在Python中,可以选择是否为理解中包含特定项目提供条件。
[x**2 for x in range(10) if x > 5]
# [36, 49, 64, 81]
可以有条件地使用函数,但是我还没有找到一种完全排除值的方法,除了filter!
在理解之外使用它们。
l = collect(0:9)
filter!(x -> x > 5, l)
l = [x^2 for x in l] # alternatively, map!(x -> x^2, l)
# [36, 49, 64, 81]
朱莉娅有可能吗?
在最新的Julia中有可能。
julia> [x^2 for x in 0:9 if x > 5]
4-element Array{Int64,1}:
36
49
64
81
否则,是的,如果您使用的是0.5之前的版本,则会遇到以下问题:
[x^2 for x in filter((x) -> x > 5, 0:9)]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句