Size: a a a

Clojure — русскоговорящее сообщество

2020 November 15

A

Arykin Valery in Clojure — русскоговорящее сообщество
получается как в Java 2-мерный массив  [ [1 0 0 ]   [0 1 0]   [0 0 1]] - потом передается в код, где используется библиотека : mikera / vectorz-clj
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Да, doseq для побочных эффектов на элементах коллекции нужен обычно. Здесь нужен скорее mapv: https://clojuredocs.org/clojure.core/mapv
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Arykin Valery
получается как в Java 2-мерный массив  [ [1 0 0 ]   [0 1 0]   [0 0 1]] - потом передается в код, где используется библиотека : mikera / vectorz-clj
[1 0 0] подразумевается три числа здесь?
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
...потому что приведённый пример выдаёт строки. Вроде.
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Какую там (ещё раз) функцию советовали для отладочной печати?
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Кажется, pr?
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
самое простое, что мне пришло в голову
  (with-open [rdr (BufferedReader. (StringReader. "1 0 0\n0 1 0\n0 0 1"))]
   (mapv #(read-string (str "[" % "]"))
         (line-seq rdr)))
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Sergey Trofimov
самое простое, что мне пришло в голову
  (with-open [rdr (BufferedReader. (StringReader. "1 0 0\n0 1 0\n0 0 1"))]
   (mapv #(read-string (str "[" % "]"))
         (line-seq rdr)))
=> [[1 0 0] [0 1 0] [0 0 1]]
источник

A

Arykin Valery in Clojure — русскоговорящее сообщество
Sergey Trofimov
[1 0 0] подразумевается три числа здесь?
да 3 числа
источник

A

Arykin Valery in Clojure — русскоговорящее сообщество
Sergey Trofimov
=> [[1 0 0] [0 1 0] [0 0 1]]
Спасибо ,  что-то в сторону map-ов вообще не  смотрел
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Arykin Valery
Спасибо ,  что-то в сторону map-ов вообще не  смотрел
странно конечно, больше смотреть вроде некуда 😊
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
(require '[clojure.string :as str])

(defn read-matrix [filename]
 (let [content (slurp filename)
       lines (str/split content #"\n")]
   (mapv (fn [line]
           (str/split line #"\s+")) lines)))

(read-matrix "file.txt")

[["1" "0" "0"]
["0" "1" "0"]
["0" "0" "1"]]
источник

A

Arykin Valery in Clojure — русскоговорящее сообщество
Ivan Grishaev
(require '[clojure.string :as str])

(defn read-matrix [filename]
 (let [content (slurp filename)
       lines (str/split content #"\n")]
   (mapv (fn [line]
           (str/split line #"\s+")) lines)))

(read-matrix "file.txt")

[["1" "0" "0"]
["0" "1" "0"]
["0" "0" "1"]]
о спасибо, и через slurp  однако можно ! прикольно...
Книга ваша еще в твердом переплете осталась?
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
есть еще в закромах...
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Ivan Grishaev
(require '[clojure.string :as str])

(defn read-matrix [filename]
 (let [content (slurp filename)
       lines (str/split content #"\n")]
   (mapv (fn [line]
           (str/split line #"\s+")) lines)))

(read-matrix "file.txt")

[["1" "0" "0"]
["0" "1" "0"]
["0" "0" "1"]]
есть ещё str/split-lines
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
о, точно
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
А можно так, чтобы сразу прочитать числа

(defn read-matrix [filename]
 (let [content (slurp filename)
       lines (str/split-lines content)]
   (mapv (fn [line]
           (read-string (format "[%s]" line))) lines)))

(read-matrix "file.txt")
[[1 0 0] [0 1 0] [0 0 1]]
источник

RN

Ryzhikov Nikolay in Clojure — русскоговорящее сообщество
Кому интересен model driven design & data dsl - подключайтесь к https://github.com/zen-lang/zen, обсуждение в @zenlang; семинарчик -  https://storage.googleapis.com/samurai-files/zen-seminar-2020.mp4
источник

EM

Evgeny Mukha in Clojure — русскоговорящее сообщество
Ссылка на семинар ведет чуть не туда, там про аксес полиси
источник

RN

Ryzhikov Nikolay in Clojure — русскоговорящее сообщество
thx поправил
источник