Racket 创建一个与另一个列表大小相同的元素列表

Racket 创建一个与另一个列表大小相同的元素列表,racket,Racket,假设我有一个长度为4的(列表a b c d) 我还有一个对象,比如说(圈出4个“实心”“白色”) 我想把这个物体列成一个列表,长度和第一个列表一样 因此,最终结果将是: (list (circle 4 "solid" "white") (circle 4 "solid" "white") (circle 4 "solid" "white") (circle 4 "solid" "white")) 我宁愿不使用循环或任何高阶函数,除非它是map或apply。您正在寻找的 所以,如果你想要和其他列

假设我有一个长度为4的
(列表a b c d)

我还有一个对象,比如说
(圈出4个“实心”“白色”)

我想把这个物体列成一个列表,长度和第一个列表一样

因此,最终结果将是:

(list (circle 4 "solid" "white") (circle 4 "solid" "white") (circle 4 "solid" "white") (circle 4 "solid" "white"))
我宁愿不使用循环或任何高阶函数,除非它是map或apply。

您正在寻找的

所以,如果你想要和其他列表一样多的元素,你只需要知道

你在找什么

所以,如果你想要和其他列表一样多的元素,你只需要知道

(make-list 4 'some-value)
; ==> (some-value some-value some-value some-value)
(make-list (length other-list) (circle 4 "solid" "white"))
; ==> (#<object1> #<object1> #<object1> #<object1>)
(map (λ (ignored) (circle 4 "solid" "white")) other-list)
; ==> (#<object1> #<object2> #<object3> #<object4>)