le problème est: J'ai une liste de listes de listes comme ceci:écrire dans le fichier Common Lisp
(((1 2) (3 4) (5 6)) ((7 8) (9 0)))
je l'ai d'écrire dans un fichier, où le nombre dans chaque liste de listes sont imprimées en ligne comme celui-ci:
.......
1 2 3 4 5 6
7 8 9 0
......
......
signifie que je peux avoir plus la liste des listes. Je me demande comment je peux implémenter ceci sans utiliser la boucle et en utilisant with-open-file
, format
et récursion. entre chaque nombre il y a un espace ou un onglet et chaque liste de sous-liste commence une nouvelle ligne. Merci
EDIT:
J'ai réussi à imprimer une sous-liste de (a b)
sur la même ligne avec ce code:
(defun write_pfs (filename point)
(with-open-file (str filename
:direction :output
:if-exists :append
:if-does-not-exist :create)
(format str (format nil "~~{~~a~~^~C~~}~T" #\Tab) point)))
(defun write_points (filename points)
(mapcar #'(lambda (x) (write_point filename x)) points))
mais je n'ai aucun moyen d'imprimer chaque sous-liste de (((a b) (b c)) ((c d) (d e)))
à une ligne différente.
Qu'avez-vous essayé jusqu'à présent? – Renzo