默认设置。
[1..5]
给出这个
[1,2,3,4,5]
也可以使用range函数完成。是否可以更改点之间的步长,以便我可以得到类似以下的结果?
[1,1.5,2,2.5,3,3.5,4,4.5,5]
[1..5]
给出这个
[1,2,3,4,5]
也可以使用range函数完成。是否可以更改点之间的步长,以便我可以得到类似以下的结果?
[1,1.5,2,2.5,3,3.5,4,4.5,5]
[1,1.5..5]
你在使用浮点数运算时需要小心。它无法精确表示1.1,因此如果你尝试
Prelude> [0,0.1 .. 1]
[0.0,0.1,0.2,0.30000000000000004,0.4,0.5,0.6,0.7,0.7999999999999999,0.8999999999999999,0.9999999999999999]
最好的方法更像是:
Prelude> map (/10) [0..10]
[0.0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0]
[1..5]
是语法糖,代表的是:enumFromTo 1 5
并且为 [1,1.5..5]
enumFromThenTo 1 1.5 5
。这个链接与Haskell的语法糖相关。
[5,4.5..1]
吗? - SebastianWilke