use List::Util qw(shuffle); my @random = ( shuffle 1 .. 10 )[ 0 .. 2 ];