Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Director] controller que le contenu d'une variable soit une liste

2 réponses
Avatar
KRS
Je récupère le contenu d'un fichier texte définit par l'utilisateur pour
récuperer une liste de photo que je traiterais par la suite.

J'utilise pour ça la fonction value(leContenuDuFichier) qui tranforme le
texte en liste.

Le problème c'est que si l'utilisateur sélectionne un mauvais fichier,
value me retournera n'importe quoi et le programme va planter quand
j'essaie d'acceder à la liste.

Comment faire pour tester si le résultat de value est bien une liste?

merci

2 réponses

Avatar
Bubarnet
KRS wrote:
Je récupère le contenu d'un fichier texte définit par l'utilisateur
pour récuperer une liste de photo que je traiterais par la suite.

J'utilise pour ça la fonction value(leContenuDuFichier) qui tranforme
le texte en liste.

Le problème c'est que si l'utilisateur sélectionne un mauvais fichier,
value me retournera n'importe quoi et le programme va planter quand
j'essaie d'acceder à la liste.

Comment faire pour tester si le résultat de value est bien une liste?


Pour presque chaque type de variable, tu as une fonction P équivalent qui
teste le type
ex :
integer -> integerP
list -> listP
...

Pour des tests plus poussés tu as la fonction ilk() qui retourne le type
Plus poussés, car par ex : une liste peut être linéaire ou de propriété
Ainsi si var est une liste de propriété, listp(var) renvoie TRUE et ilk(var)
renvoie #proplist

--
Bubar
Freelance Multimédia - internet
Création de logiciels multimédia et sites web
http://www.wapitistudio.com
Avatar
KRS
Bubarnet wrote:
Pour presque chaque type de variable, tu as une fonction P équivalent qui
teste le type
ex :
integer -> integerP
list -> listP
...

Pour des tests plus poussés tu as la fonction ilk() qui retourne le type
Plus poussés, car par ex : une liste peut être linéaire ou de propriété
Ainsi si var est une liste de propriété, listp(var) renvoie TRUE et ilk(var)
renvoie #proplist




Merci beaucoup !