quitar elementos de una listaHola,
alguien me puede ayudar... tengo dos listas como esta:
MYLIST = {:empty, :empty2, :Name("A:k"), :Name("A:m"), :Name("A:x"), :Name("A:y"), :NA, :Name("D:3"), :Name("D:6"), :Name("D:8")};
DELCOLS= {:empty, :empty2};
me gustaría eliminar los elementos de la lista DELCOLS de MYLIST
Resultados previstos:
MYLIST = {:Name("A:k"), :Name("A:m"), :Name("A:x"), :Name("A:y"), :NA, :Name("D:3"), :Name("D:6"), :Name("D:8")}
gracias de antemano
gianpaolo
Re: eliminar elementos de una listaEl código de Jeff es excelente y utiliza una forma inteligente de eliminar múltiples instancias de elementos no deseados.
Solo para ilustrar que a menudo hay más de una forma de hacer las cosas en JSL: aquí hay un enfoque alternativo que usa matrices asociativas.
(Nota, todos los múltiplos serían eliminados)
MYLIST = {:empty, :empty2, :Name("A:k"), :Name("A:m"), :Name("A:x"), :Name("A:y"), :NA, :Name("D:3"), :Name("D:6"), :Name("D:8")};
DELCOLS = {:empty, :empty2};
// Remove DELCOLS from MYLIST. Retains original order of items.
AA = Associative Array(MYLIST, 1 :: N Items(MYLIST));
MYLIST = (AA << Remove(Associative Array(DELCOLS)) << get keys)[Rank(AA << get values)];
// If order is not important, this simpler version works (items sorted alphabetically)
MYLIST_sorted = Associative Array(MYLIST) << Remove(Associative Array(DELCOLS)) << get keys;
Show(MYLIST, MYLIST_sorted);
Re: eliminar elementos de una lista@txnelson es correcto, el índice de secuencias de comandos y la guía de secuencias de comandos son recursos excelentes.
Sin embargo, para ayudarlo en el camino, consulte el Para() bucle, Eliminar de() , como lista() y ubicación() funciones
MYLIST = {:empty, :empty2, :Name( "A:k" ), :Name( "A:m" ), :Name( "A:x" ), :Name( "A:y" ), :NA,
:Name( "D:3" ), :Name( "D:6" ), :Name( "D:8" )};
DELCOLS = {:empty, :empty2};
For( i = 1, i <= N Items( delcols ), i++,
Remove From( mylist, As List( Loc( mylist, delcols[i] ) ) )
);
Re: eliminar elementos de una listaUsaría la función Remove(). Ver el índice de secuencias de comandos
Ayuda==>Índice de secuencias de comandos
para detalles.
Le sugiero encarecidamente que lea la Guía de secuencias de comandos.Contiene un detalle sobre cómo manipular listas.
Ayuda==>Libros==>Guía de secuencias de comandos