加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl应用:DNA序列翻译为蛋白质的完整程序(中)

发布时间:2020-12-15 21:03:28 所属栏目:大数据 来源:网络整理
导读:use warnings;use strict;my $dna='cgacgtcttcgtacgggactagctcgtgtcggtcgc';my $protein=' ';my $codon;for(my $i=0; $i(length($dna)-2);$i+=3){$codon=substr($dna,$i,3);$protein.=codon2aa($codon);}print "I translated the DNAnn$dnann into the p

use warnings;
use strict;

my $dna='cgacgtcttcgtacgggactagctcgtgtcggtcgc';
my $protein=' ';
my $codon;

for(my $i=0; $i<(length($dna)-2);$i+=3)
{
	$codon=substr($dna,$i,3);
	$protein.=codon2aa($codon);
}
print "I translated the DNAnn$dnann into the proteinnn$proteinnn";
exit;



#*****************************************************************************************8
# codon2aa   
#   
# A subroutine to translate a DNA 3-character codon to an amino acid   
#   Version 3,using hash lookup   
   
sub codon2aa   
{   
    my($codon) = @_;   
   
    $codon = uc $codon;#uc=uppercase;lc=lowercase  
                   #也就是大小写转换,uc表示将所有的小写 转换为大写  
               #lc将所有的大写转换为小写  
    
    my(%genetic_code) = (   
       
    'TCA' => 'S',# Serine   
    'TCC' => 'S',# Serine   
    'TCG' => 'S',# Serine   
    'TCT' => 'S',# Serine   
    'TTC' => 'F',# Phenylalanine   
    'TTT' => 'F',# Phenylalanine   
    'TTA' => 'L',# Leucine   
    'TTG' => 'L',# Leucine   
    'TAC' => 'Y',# Tyrosine    
    'TAT' => 'Y',# Tyrosine   
    'TAA' => '_',# Stop   
    'TAG' => '_',# Stop   
    'TGC' => 'C',# Cysteine   
    'TGT' => 'C',# Cysteine   
    'TGA' => '_',# Stop   
    'TGG' => 'W',# Tryptophan   
    'CTA' => 'L',# Leucine   
    'CTC' => 'L',# Leucine   
    'CTG' => 'L',# Leucine   
    'CTT' => 'L',# Leucine   
    'CCA' => 'P',# Proline   
    'CCC' => 'P',# Proline   
    'CCG' => 'P',# Proline   
    'CCT' => 'P',# Proline   
    'CAC' => 'H',# Histidine   
    'CAT' => 'H',# Histidine   
    'CAA' => 'Q',# Glutamine   
    'CAG' => 'Q',# Glutamine   
    'CGA' => 'R',# Arginine   
    'CGC' => 'R',# Arginine   
    'CGG' => 'R',# Arginine   
    'CGT' => 'R',# Arginine   
    'ATA' => 'I',# Isoleucine   
    'ATC' => 'I',# Isoleucine   
    'ATT' => 'I',# Isoleucine   
    'ATG' => 'M',# Methionine   
    'ACA' => 'T',# Threonine   
    'ACC' => 'T',# Threonine   
    'ACG' => 'T',# Threonine   
    'ACT' => 'T',# Threonine   
    'AAC' => 'N',# Asparagine   
    'AAT' => 'N',# Asparagine   
    'AAA' => 'K',# Lysine   
    'AAG' => 'K',# Lysine   
    'AGC' => 'S',# Serine   
    'AGT' => 'S',# Serine   
    'AGA' => 'R',# Arginine   
    'AGG' => 'R',# Arginine   
    'GTA' => 'V',# Valine   
    'GTC' => 'V',# Valine   
    'GTG' => 'V',# Valine   
    'GTT' => 'V',# Valine   
    'GCA' => 'A',# Alanine   
    'GCC' => 'A',# Alanine   
    'GCG' => 'A',# Alanine   
    'GCT' => 'A',# Alanine       
    'GAC' => 'D',# Aspartic Acid   
    'GAT' => 'D',# Aspartic Acid   
    'GAA' => 'E',# Glutamic Acid   
    'GAG' => 'E',# Glutamic Acid   
    'GGA' => 'G',# Glycine   
    'GGC' => 'G',# Glycine   
    'GGG' => 'G',# Glycine   
    'GGT' => 'G',# Glycine   
    );   
   
    if(exists $genetic_code{$codon})   
    {   
        return $genetic_code{$codon};   
    }  
    else  
    {   
   
            print STDERR "Bad codon "$codon"!!n";   
            exit;   
    }   
} 

#*****************************************************************************************




结果如下:

F:&;perla.pl
I translated teh DNA

cgacgtcttcgtacgggactagctcgtgtcggtcgc

 into the protein

 RRLRTGLARVGR

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读