Come faccio a convertire una mappa clojure nella stringa, quasi coppia chiave-valore, come illustrato di seguito:chiavi Converti mappa e valori per array di stringhe
Clojure dati:
(def data { :starks "Winter is coming" :Lannisters "Hear me roar" })
voglio convertire il sopra a
"starks" "winter is coming" "Lannisters" "hear me roar"
non voglio nessun identificatori/delimitatori tra ma ovviamente "starks"
devono essere sempre seguiti da "winter is coming"
ho provato questo:
(str (keys data) (vals data))
Quali Risulterà:
"(:starks :Lannisters)(\"Winter is coming\" \"Hear me roar\")"
che non è quello che voglio a tutti ...
- Le chiavi di dati cartografici e valori non sono sempre uguale quindi deve essere generico
- ci sarà sempre un solo livello, come in, il valore non conterrà un nidificato mappa ecc ..
Modifica
Quello che sto effettivamente cercando di fare:
Sto cercando di indice di qualche migliaio di Neo4j nodi con clojure. Per aiutarmi con questo compito, sto usando la libreria Neocons Clojure neo4j.
Secondo il documentation, il add-to-index
accetta proprietà e valori in questo modo:
(nn/add-to-index (:id node) (:name idx) "username" "joe")))
che è, nel mio caso di cui sopra, andare a guardare come
(nn/add-to-index (:id node) (:name idx) "starks" "winter is coming" "Lannisters" "Hear me roar")))
ora, ho il mio Nodo , Posso accedere alle proprietà del nodo con (:data node)
e questo mi fornisce una mappa del clojure.
La proprietà differisce praticamente da nodo a nodo quindi sto cercando di capire come passare quella mappa alla biblioteca nel modo in cui si capisce ..
s' Marius Danila risposta mi ha fatto quasi.
Facendo
(map name (apply concat data))
lamenta ancora del terzo parametro, in quanto ha le parentesi intorno al risultato.
Quindi, come posso ottenere questo? Devo solo scrivere un sacco di blocchi if-not
per costruire le proprietà da solo?
Grazie
Ooh, questo ora ha molto senso! Grazie mille, modificherò il mio codice per riflettere questo. Grazie ancora! – LocustHorde
sì, funziona perfettamente, grazie! Giuro che potrei aggiungere diverse proprietà allo stesso tempo .. ma ovviamente sto pensando ad altro. Grazie ancora! – LocustHorde