我希望检索一个给定键的值,它是一个列表。
(defn string-tuple [my-string]
(partition 2 1 my-string))
(defn split-and-frequent-tuple [lines]
(frequencies (string-tuple lines)))
(defn split-and-frequent [lines]
(frequencies lines))
(defn string-split [my-string]
(str/split my-string #" "))
(def string-pairs (split-and-frequent-tuple (string-split "<s> I am Sam </s> <s> Sam I am </s> <s> I do not like green eggs and ham </s>")))
;; Calculate that bigram probability
(println string-pairs)
(println (string-pairs '(green eggs)))基本上,字符串对计数项目数量的频率,比如(绿色鸡蛋)出现在文本中。但是,当我试图使用类似(string-pairs '(green eggs))的方法检索密钥时,我总是会得到nil,即使地图显示该键的值为1。
我只是想知道我哪里出了问题,我已经试过了所有的:(
耽误您时间,实在对不起
发布于 2016-05-01 01:36:13
当您使用println显示值时,字符串和符号看起来是相同的,即使它们不相等。
调试时,在您的prn调用中使用明确显示值的pr-str,或者使用pr-str生成pr或prn将使用的字符串。
这将给出正确的结果(如果向量和列表的内容相等,则在Clojure中是相等的)。
(string-pairs ["green" "eggs"])https://stackoverflow.com/questions/36962064
复制相似问题