0

我是新手,正在做一些练习。如何将def带有句子列表和随机函数的函数放入defn函数中?这是如何运作的?

(def list["test1", "test2", "test3"])- 工作正常 (rand-nth list)- 工作正常

如何将其放入函数中defn

感谢帮助。

4

1 回答 1

0

IIUC 你只是想重新实现rand-nth,不是吗?

(defn wrapped-rand-nth [a-list]
  (rand-nth a-list))

如果您希望列表是静态的(不变的)

(defn randomize []
  (rand-nth ["test1" "test2" "test3"]))

有效,但它会在每次调用时创建向量,更好的方法是

(let [the-list ["test1" "test2" "test3"]]
  (defn randomize []
    (rand-nth the-list)))
于 2019-11-14T13:40:34.160 回答