Haskell中的n个零列表

Pig*_*gna 3 haskell list-comprehension list

这可能很容易,但我无法弄清楚如何做相当于Python的

[0]*n
Run Code Online (Sandbox Code Playgroud)

在Haskell中,为了得到一个带有n个零的列表.

[0]*n
Run Code Online (Sandbox Code Playgroud)

不起作用.我是否有义务做类似的事情[0 | x <-[1..5]]

Sib*_*ibi 8

你可以这样做:

?> take 5 (repeat 0)
[0,0,0,0,0]
Run Code Online (Sandbox Code Playgroud)

或者@obadz指出,这更简洁:

?> replicate 5 0
[0,0,0,0,0]
Run Code Online (Sandbox Code Playgroud)

我个人不喜欢python语法.*意味着乘法,但它在你的情况下做了其他事情.但那只是我的个人意见 :).

  • 或者'复制5 0` (11认同)
  • `*`对于列表和整数的作用相同; 它重复添加.`some_list*3 == 3*some_list == some_list + some_list + some_list`,其中列表添加只是连接. (2认同)