Spero che questa domanda abbia una risposta molto semplice. Riesco a pensare a modi con cui fare cicli noiosi e fastidiosi, ma spero che ci sia una soluzione più elegante.Ruby: dividere un hash in due in base ai tasti desiderati
se ho le seguenti due variabili:
hash = {:a => 1, :b => 2, :c => 3, :d => 4}
keyset = [:a, :c]
Come posso ottenere i seguenti due hash nel modo più semplice possibile?
hash1 = {:a => 1, :c => 3}
hash2 = {:b => 3, :d => 4}
Se l'esempio non fa il mio obiettivo chiaro, in sostanza, quello che voglio è un ibrido tra #delete
e #delete_if
- #delete
restituisce il valore eliminato, mentre #delete_if
mi permette di cancellare in massa. Preferirei un modo per eliminare alla rinfusa e avere i valori cancellati restituiti - o qualcosa di equivalente.
Grazie!
meraviglioso - grazie! – Matchu