我是F#的新手,我在搜索..
运算符时遇到问题。有人可以解释为什么这个功能有效吗?
let oddsUnderN n = seq {for i in 1 .. 2 .. n -> i}
多个..
运算符如何工作?
答案 0 :(得分:4)
这是sequence expression,用于指定序列的起始值,增量和结束值。在这种情况下,起始值为1,end为n,increment为2。
答案 1 :(得分:1)
实际上,你的赋值变量oddsUnderN
是一个很好的线索,关于这个循环会产生什么。该语法允许您跳过序列中的每个其他元素,只返回奇数。
因此,如果n = 10,那么您的i
将会相等:
1 3 5 7 9
所以在for i in x .. y .. z do
:
换句话说。这个表达
for i in 1 .. 10 do
...是:
的简写for i in 1 .. 1 .. 10 do