[算法和数据结构入门][Day2]python 直接替换列表中的元素几种方法

在DNA中有4种碱基,分别为ATCG,其中符号“A”和“T”是互补的,符号“C”和“G”是互补的,现给定一个DNA序列,求出他的互补DNA序列,编写函数 DNA_strand(dna)

分支结构

def DNA_strand(str):
    str_list = list(str)
    for i in range(len(str_list)):
        if str_list[i] =='A':
            str_list[i] = 'T'
        elif str_list[i] == 'T':
             str_list[i] = 'A'
        elif str_list[i] == 'C':
             str_list[i] = 'G'
        elif str_list[i] == 'G':
             str_list[i] = 'C'
    print(''.join(str_list))
DNA_strand("ATTGC")
DNA_strand("AAAAA")

在这里插入图片描述

字典

def DNA_strand(str):
    ref = {'A':'T','T':'A','C':'G','G':'C'}
    print(''.join(ref[i] for i in str))
DNA_strand("ATTGC")
DNA_strand("AAAAA")

在这里插入图片描述

函数

def DNA_strand(str):
    table = ''.maketrans('ATGC','TACG')
    print(str.translate(table))
DNA_strand("ATTGC")
DNA_strand("AAAAA")

在这里插入图片描述

字符串replace方法

def DNA_strand(dna):
    dna_dict = {'A':'T','T':'A','G':'C','C':'G'}
    dna_re = ''
    for i in dna:
        dna_re += i.replace(i,dna_dict[i])
    print(dna_re)
DNA_strand('ATTGC')
DNA_strand('AAAA')

更多精彩请访问

发布了42 篇原创文章 · 获赞 28 · 访问量 4961

猜你喜欢

转载自blog.csdn.net/KaelCui/article/details/105307488