多个 .. 运算符如何在 for 表达式中工作?
How do multiple .. operators work in a for expression?
我是 F# 的新手,我在搜索 ..
运算符时遇到了问题。有人可以解释为什么这个功能有效吗?
let oddsUnderN n = seq {for i in 1 .. 2 .. n -> i}
多个 ..
运算符如何工作?
这是一个sequence expression,用于指定序列的起始值、增量和结束值。在这种情况下,起始值为 1,结束值为 n,增量为 2。
实际上,您分配的变量 oddsUnderN
是关于该循环将产生什么的重要线索。该语法允许您跳过序列中的所有其他元素,只返回奇数。
所以如果 n = 10 那么你的 i
又等于:
1 3 5 7 9
所以在for i in x .. y .. z do
的循环语法中:
- x为起始值
- y为增量值
- z 是最终值
也就是说。这个表达式
for i in 1 .. 10 do
...是 shorthand 用于:
for i in 1 .. 1 .. 10 do
我是 F# 的新手,我在搜索 ..
运算符时遇到了问题。有人可以解释为什么这个功能有效吗?
let oddsUnderN n = seq {for i in 1 .. 2 .. n -> i}
多个 ..
运算符如何工作?
这是一个sequence expression,用于指定序列的起始值、增量和结束值。在这种情况下,起始值为 1,结束值为 n,增量为 2。
实际上,您分配的变量 oddsUnderN
是关于该循环将产生什么的重要线索。该语法允许您跳过序列中的所有其他元素,只返回奇数。
所以如果 n = 10 那么你的 i
又等于:
1 3 5 7 9
所以在for i in x .. y .. z do
的循环语法中:
- x为起始值
- y为增量值
- z 是最终值
也就是说。这个表达式
for i in 1 .. 10 do
...是 shorthand 用于:
for i in 1 .. 1 .. 10 do