Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re: printing hash values, (don't need the keys)

by trammell (Priest)
on Jul 06, 2006 at 22:07 UTC ( #559684=note: print w/replies, xml ) Need Help??

in reply to printing hash values, (don't need the keys)

One problem with your code is that you're reading the entire file into memory when you don't need to. Here's an alternative that doesn't (untested):
my $data_file = "ActiveItems2.txt"; open(DAT, $data_file) || die("Could not open file: $!"); my %seen; while (<DAT>) { chomp; $seen{$_}++; } close(DAT); for (sort keys %seen){ print "$_\n"; }

Replies are listed 'Best First'.
Re^2: printing hash values, (don't need the keys)
by GrandFather (Sage) on Jul 06, 2006 at 22:32 UTC

    If you omit the chomp then you can:

    my $data_file = "ActiveItems2.txt"; open(DAT, $data_file) || die("Could not open file: $!"); my %seen; $seen{$_}++ while <DAT>; print for sort keys %seen; close(DAT);

    Another interesting variant (although it may suffer the slurp problem) is to use a hash slice:

    @seen{<DAT>} = (); # Hash slice assignement print for sort keys %seen;

    It's worth seeing the hash slice a few times to remember that it is there and what the syntax is. Like many things in Perl, occasionally it is exactly what you need to achieve a clean solution to a problem. Perhaps not in this case though. :)

    DWIM is Perl's answer to Gödel

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://559684]
[shmem]: just one proverb before dozing off: when dealing with a bear, hubris is suicidal
[shmem]: Old_Gray_Bear would nod, and go back to sleep, then - but he's been sleeping for a year now.
[erix]: "AngloZionist Empire"? "Stop the Empire's war on Russia?" WTF?
erix stops reading as recommended by the blog itself
[erix]: my attention being jealously guarded ;)
[shmem]: erix, yes, it's a WTF. Since...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (7)
As of 2018-03-19 20:46 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (246 votes). Check out past polls.