Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re^3: hash array

by bart (Canon)
on Oct 09, 2012 at 11:33 UTC ( #997987=note: print w/ replies, xml ) Need Help??


in reply to Re^2: hash array
in thread hash array

I think McA pretty much got it nailed. Let me tell you what is going on.

  1. @clk_array = %clock_sheet; will flatten the hash as a list in the form (key1, value1, key2, value2, ...). You either want just the keys, or just the values. For which, duh, keys and values could be very useful. Like:
    @clk_array = keys %clock_sheet;
    or
    @clk_array = values %clock_sheet;
  2. You magically expect "@clk_array\-name" to distribute the suffix "-name" across each element. But instead the string will take each value from the array, and join them with the current value of $" which is a space by default, and then append the suffix to the whole.

    To distribute the suffix over every element, you can use map:

    @clk_with_suffix = map "$_-name", @clk_array;


Comment on Re^3: hash array
Select or Download Code
Re^4: hash array
by McA (Curate) on Oct 09, 2012 at 11:38 UTC
    A ++ for the explanation.
Re^4: hash array
by Anonymous Monk on Oct 09, 2012 at 11:54 UTC
    thanks my issue got solved .... can u please explain about "map"

      Please have a look at perldoc -f map. If there's something you don't understand, allmost everyone will help you.

      map is a looping function to apply an expression or a block to every item in a list (each item in turn assigned to $_), and collect/return the list of results. It's like:
      my @results; foreach(@_) { push @results, &$CODE(); } return @results;
      where $CODE is the expression (delimited by a comma) or block (no delimiter) in the first argument.

      example:

      @output = map $_*2, 1 .. 10;
      which is identical in result to
      @output = map { $_*2 } 1 .. 10;
      and which return the even numbers from 2 to 20; the double of all numbers between 1 and 10.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://997987]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (5)
As of 2014-11-29 05:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (203 votes), past polls