say for keys %hash; en post 5.10 Ce n'est pas vraiment possible de répondre à une telle question sans voir le code. Eh bien, je ne voudrais pas mettre tout le code dans un commentaire indiquant la zone de préoccupation: sub show_index { my $index = $mw->messageBox(-type=>"ok", -icon=>"info", -message=> -title=>"Index"); } Le vide de la zone de message est là où je veux le code. Mettez ceci dans: join "\n", keys %hash. C'est un très question différente de celle que vous avez demandé. Définir "ne fonctionne pas", s'il vous plaît.
De le mettre dans une variable, pour l'impression dans une boîte de message en fonction de vos commentaires:
my $var = join "\n", keys %hash;
Est-il un moyen de mettre cela à l'intérieur de Perl/Tk programme? Je ne vois pas pourquoi pas. Il suffit d'ajouter le bloc de code. Je ne pense pas que l'on devrait utiliser $,. Je veux dire, je l'aime trop mais j'ai peur que la plupart des gens auraient à le chercher. S'avère, l'OP ne souhaitez pas imprimer les clés à tous, donc la solution est le "joindre" chose, pas la $, partie. D'ailleurs, quel est le problème avec l'aide de ces variables? Ils sont là pour une raison.
Nous pouvons faire cela en utilisant la carte de fonction.
map {print"$_\n"} keys %hash;
fonction de mappage de processus de sa déclaration pour toutes les clés dans la table de hachage.
Le map fonction est là pour transformer une liste. Si vous utilisez map dans le contexte vide (c'est à dire si vous n'utilisez pas la valeur de retour), puis vous l'utilisez mal, et devrait probablement passer à l'aide d'un foreach boucle à la place (par exemple print "$_\n" foreach keys %hash pourrait fonctionner ici). Une alternative qui utilise map comme prévu pourrait être print map { "$_\n" } keys %hash. ok merci... je pense juste que pour donner de réponse pour l'exigence..
Est-ce que cela pour vous?
say for keys %hash;
en post 5.10Ce n'est pas vraiment possible de répondre à une telle question sans voir le code.
Eh bien, je ne voudrais pas mettre tout le code dans un commentaire indiquant la zone de préoccupation:
sub show_index { my $index = $mw->messageBox(-type=>"ok", -icon=>"info", -message=> -title=>"Index"); }
Le vide de la zone de message est là où je veux le code.Mettez ceci dans:
join "\n", keys %hash
. C'est un très question différente de celle que vous avez demandé.Définir "ne fonctionne pas", s'il vous plaît.
OriginalL'auteur piCookie
Version courte:
Ou à l'intérieur d'un gros script:
De le mettre dans une variable, pour l'impression dans une boîte de message en fonction de vos commentaires:
Je ne vois pas pourquoi pas. Il suffit d'ajouter le bloc de code.
Je ne pense pas que l'on devrait utiliser
$,
. Je veux dire, je l'aime trop mais j'ai peur que la plupart des gens auraient à le chercher.S'avère, l'OP ne souhaitez pas imprimer les clés à tous, donc la solution est le "joindre" chose, pas la
$,
partie. D'ailleurs, quel est le problème avec l'aide de ces variables? Ils sont là pour une raison.OriginalL'auteur TLP
Nous pouvons faire cela en utilisant la carte de fonction.
fonction de mappage de processus de sa déclaration pour toutes les clés dans la table de hachage.
map
fonction est là pour transformer une liste. Si vous utilisezmap
dans le contexte vide (c'est à dire si vous n'utilisez pas la valeur de retour), puis vous l'utilisez mal, et devrait probablement passer à l'aide d'unforeach
boucle à la place (par exempleprint "$_\n" foreach keys %hash
pourrait fonctionner ici). Une alternative qui utilisemap
comme prévu pourrait êtreprint map { "$_\n" } keys %hash
.ok merci... je pense juste que pour donner de réponse pour l'exigence..
OriginalL'auteur vaishali