Entfernen NIL aus einer Liste von LISP
Einfache Frage.
Sagen, ich habe eine Reihe von NULL in meine Liste q . Gibt es da eine einfache Möglichkeit zum entfernen des NILs und nur halten Sie den zahlen?. eval scheint nicht zu funktionieren hier.
(NIL 1 NIL 2 NIL 3 NIL 4)
Brauche ich (1 2 3 4)
- Klingt wie Sie ' re suchen für eine filter-Funktion. Die Lisp-Dialekt (Scheme, Common Lisp, etc.) verwenden Sie?
- Common Lisp. Macht es Sinn, eine eingebaute Funktion, der ignoriert NILs..
- es genagelt, schauen Sie sich seine Antwort!
- wenn diese Hausaufgaben, markieren Sie Sie als solche
InformationsquelleAutor CyberShot | 2012-02-20
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Common Lisp, anstatt zu entfernen, wenn Sie verwenden können, zu entfernen:
In common lisp und vielleicht auch andere Dialekte:
Wenn Sie ein Schema, das wird gut funktionieren:
Wie ich bereits in meinem Kommentar oben, ich bin nicht sicher, ob die Lisp-Dialekt du verwendest, aber dein problem passt genau in die Form einer filter-Funktion (Python hat eine gute Dokumentation für Ihr filter hier). Eine Scheme-implementation, entnommen aus SICP ist
vorausgesetzt natürlich, dass Ihr Lisp-interpreter, der nicht mit einem eingebauten filter-Funktion, ich vermute, es funktioniert. Sie können dann nur die zahlen von Ihrer Liste
l
durch den Aufruf