On 12/12/2007, Auxence Sima <[EMAIL PROTECTED]> wrote:
>
> Hi everyone.
>   I d like to have u guys input about my code. Im writing a perl script
> that would generate some primers. my input file calles " output.txt ) was
> generated from primer3.
>   if u guys can take a look at my script and tell me what u detect that
> needs to be correcte/ or something that i missed to include. hope to hear
> from u all.
>
>
>
>   #! /usr/bin/perl- w
>   #programpro.pl
>   use strict;
>   use primer3;
>
>   # initialize variables
>
>   my %sequences;
>   my $key;
>   my $file = "output.txt";
>
>   # Read a primer3 output file
>
>   my $primer3 = primer3-> new ( -file=>"data/output.txt");
>   # iterate over sequences


%sequences has no keys at this stage. You've declared %sequences but haven't
assigned anything to it so this loop will not happen.

Foreach should be foreach, perl is case senitive. You can declare my $key
here and drop it from above keeping it's scope within the block.
foreach my $key (keys %sequences) {

  Foreach $key (keys (%sequences)) {
>
>      # Search for primers


You've already declared $primer above. Are these meant to be separate
variables?

     my $primer = primer3=>new ($key,
>             $sequences {$key};
>     print "$key\nLeft\t\t\tRight\n";
>     while ($primer=>getNextpair ( )) {
>         print $primer=> LeftOligo ( ) . "\t" .
>    $primer=>RightOligo( ) . "\n" ;
>       }
>      Print "\n";
>
>   }



I am not sure if  it's you mail client but the are  too many capitalised
words in what you have shown. What happens if you run it? I imagine that
with the perl -w you would get lots of warnings and errors.
  • Perl Code Auxence Sima
    • Re: Perl Code Dermot

Reply via email to