Variables 分配多个变量Haskell

Variables 分配多个变量Haskell,variables,haskell,Variables,Haskell,在Haskell中有没有一种方法可以将相同的值分配给多个变量? e、 g类似于这样: h,f = 5 不,没有理由这么做。因为变量在haskell中是不可变的,一旦某个值绑定到某个变量,该值在范围内就不会改变。因此,h,f=5在haskell中没有意义。只需使用h,其中预计为5;没有必要使用f不。也没有理由这样做。因为变量在haskell中是不可变的,一旦某个值绑定到某个变量,该值在范围内就不会改变。因此,h,f=5在haskell中没有意义。只需使用h,其中预计为5;不需要f Prelud

在Haskell中有没有一种方法可以将相同的值分配给多个变量? e、 g类似于这样:

h,f = 5 

不,没有理由这么做。因为变量在haskell中是不可变的,一旦某个值绑定到某个变量,该值在范围内就不会改变。因此,
h,f=5
在haskell中没有意义。只需使用
h
,其中预计为5;没有必要使用
f

不。也没有理由这样做。因为变量在haskell中是不可变的,一旦某个值绑定到某个变量,该值在范围内就不会改变。因此,
h,f=5
在haskell中没有意义。只需使用
h
,其中预计为5;不需要
f

Prelude> let [x, y] = replicate 2 5
Prelude> x
5
Prelude> y
5
Prelude>
您需要
replicate
来“复制”一个值。在这种情况下,我复制了5次
[x,y]
表示从列表中获取
x
y
。这个列表是
[5,5]
。所以,你得到了
x=5
y=5

我在现实世界中从来没有做过这样的事Haskell但是你得到了你想要的

EDIT:我们可以使用Haskell中的
repeat
函数和惰性求值功能。多亏了

您需要
replicate
来“复制”一个值。在这种情况下,我复制了5次
[x,y]
表示从列表中获取
x
y
。这个列表是
[5,5]
。所以,你得到了
x=5
y=5

我在现实世界中从来没有做过这样的事Haskell但是你得到了你想要的

编辑:我们可以在Haskell中使用
repeat
函数和惰性评估功能。多亏了


出于好奇:你脑子里还有其他语言可以做到这一点吗?@ChrisMartin也许。@ChrisMartin在Python中你可以做
h=f=5
@ChrisMartin在R中你甚至可以做
fh
出于好奇:你脑子里还有其他语言可以做到这一点吗?@ChrisMartin也许。@ChrisMartin在Python中你可以可以执行
h=f=5
@ChrisMartin In R您甚至可以执行
f h
如果要避免可能的模式匹配错误,请使用
repeat
让x:y:\=repeat 5
。我也从来没有在野外见过这个成语,并且怀疑它是毫无用处的,因为@absolutezero-atterences.@luqui我忘了我可以使用
repeat
和懒惰求值的特性。谢谢如果要避免列表长度与要复制的数字不匹配时可能出现的模式匹配错误,请使用
repeat
让x:y:=repeat 5
。我也从来没有在野外见过这个成语,并且怀疑它是毫无用处的,因为@absolutezero-atterences.@luqui我忘了我可以使用
repeat
和懒惰求值的特性。谢谢它可以与记录通配符结合使用,例如,{..}点的
origin=let x,y,z=0
它可以与记录通配符结合使用,例如,{..}点的
origin=let x,y,z=0
Prelude> let x:y:_ = repeat 5
Prelude> x
5
Prelude> y
5
Prelude>