【发布时间】:2020-05-06 14:42:17
【问题描述】:
下面的函数将 text 变量拆分成一个 steps 长的字符序列。唯一的问题是我不知道如何返回结果列表,我需要为 step 的几个值计算其香农熵。
(defn split-text [text step]
(loop [i 0 result []]
(when (<= (+ i step) (count text))
(recur (+ i step)
(conj result (subs text i (+ i step)))))))
【问题讨论】:
-
正如下面的答案所说,您应该在错误条件分支中返回结果。您也可以这样做,以降低代码复杂性:
(defn split-text [text step] (map (partial apply str) (partition step text)))
标签: clojure