Perl : vider un hashes de hashes
Fermé
Marianne
-
5 juil. 2005 à 15:48
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 6 juil. 2005 à 07:29
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 6 juil. 2005 à 07:29
A voir également:
- Perl : vider un hashes de hashes
- Denon perl pro test - Guide
- Active perl - Télécharger - Édition & Programmation
- Can't open perl script "makefile.pl": no such file or directory - Forum Perl
- Perl tableau 2 dimensions - Forum Perl
- /Usr/bin/env: ‘perl\r’: no such file or directory ✓ - Forum Linux / Unix
2 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 567
6 juil. 2005 à 07:29
6 juil. 2005 à 07:29
Bonjour,
Il faut plutôt utiliser la fonction : delete
undef c'est une valeur spéciale que les variables possedent avant la prémière affectation. Si on utilise undef comme quelque chose numérique alors il vaut 0 et si on veut l'utiliser comme une chaîne il vaut une chaine vide.
Cependant undef n'est ni un nombre, ni une chaine, c'est plutôt un type de valeur scalaire indépendant.
Petit exemple:
------------------résultat----------------------------------------
En suite il faut adapter pour les hachage de hachage
Il faut plutôt utiliser la fonction : delete
delete($HACH{$PLOP});
undef c'est une valeur spéciale que les variables possedent avant la prémière affectation. Si on utilise undef comme quelque chose numérique alors il vaut 0 et si on veut l'utiliser comme une chaîne il vaut une chaine vide.
Cependant undef n'est ni un nombre, ni une chaine, c'est plutôt un type de valeur scalaire indépendant.
Petit exemple:
#! /usr/bin/perl -w %famille = ( pere => "jean", mere => "marie", fils => "george", fille => "sarah" ); sub affiche { my @ma_famille = keys %famille; my $membre; print "Clefs : @ma_famille\n"; print "Valeurs : "; foreach $membre (@ma_famille) { my $prenom = $famille{$membre}; if (defined $prenom) { print "$prenom "; } else { print "UNDEF "; } } print "\n"; } print "Debut :\n"; affiche(); # on utilise undef, la clé fils n'est pas effacée, elle contient la valeur undef print "\nfils pas définie :\n"; undef $famille{"fils"}; affiche(); # on utilise delete la clé fils et sa valeur sont effacé print "\nfils effacé :\n"; delete $famille{"fils"}; affiche();
------------------résultat----------------------------------------
Debut : Clefs : fille mere pere fils Valeurs : sarah marie jean george fils pas définie : Clefs : fille mere pere fils Valeurs : sarah marie jean UNDEF fils effacé : Clefs : fille mere pere Valeurs : sarah marie jean
En suite il faut adapter pour les hachage de hachage
mamiemando
Messages postés
33030
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
28 mars 2024
7 736
5 juil. 2005 à 21:10
5 juil. 2005 à 21:10
$hash{$plop}=undef;
Non ?
Non ?