Python 使用字典提供DNA到RNA碱基的映射
我写这段代码是为了回答pyschools学习过程中的主题8问题5。代码正在运行,但我相信有一种更优雅的方法可以获得相同的结果,但作为一名python和编程新手,我什么都想不出来。有人能帮忙吗Python 使用字典提供DNA到RNA碱基的映射,python,Python,我写这段代码是为了回答pyschools学习过程中的主题8问题5。代码正在运行,但我相信有一种更优雅的方法可以获得相同的结果,但作为一名python和编程新手,我什么都想不出来。有人能帮忙吗 # Use a dictionary to provide the mapping of DNA to RNA bases. def mRNAtranscription(dna_template): dna2rna = { } mrna = '' l = [] for bas
# Use a dictionary to provide the mapping of DNA to RNA bases.
def mRNAtranscription(dna_template):
dna2rna = { }
mrna = ''
l = []
for base in dna_template:
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
mrna = dna2rna.get(base)
l.append(mrna)
return ''.join(l)
我假设dna模板是一个字符串,如果你不想深入到特殊的模块中,我认为这是一种方法
def func(dna_template):
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
# take every base and translate it to rna and join all rna-bases to a string
return ''.join(dna2rna.get(base) for base in dna_template)
func('ATCG')
Out:'UAGC'
我假设dna模板是一个字符串,如果你不想深入到特殊的模块中,我认为这是一种方法
def func(dna_template):
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
# take every base and translate it to rna and join all rna-bases to a string
return ''.join(dna2rna.get(base) for base in dna_template)
func('ATCG')
Out:'UAGC'
我假设dna模板是一个字符串,如果你不想深入到特殊的模块中,我认为这是一种方法
def func(dna_template):
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
# take every base and translate it to rna and join all rna-bases to a string
return ''.join(dna2rna.get(base) for base in dna_template)
func('ATCG')
Out:'UAGC'
我假设dna模板是一个字符串,如果你不想深入到特殊的模块中,我认为这是一种方法
def func(dna_template):
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
# take every base and translate it to rna and join all rna-bases to a string
return ''.join(dna2rna.get(base) for base in dna_template)
func('ATCG')
Out:'UAGC'
您的代码不错,但也不是非常地道。列表理解是一个很好的方法:
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
rna = ''.join([ dna2rna[base] for base in dna_template])
顺便说一句,出于卫生考虑,尽量避免在循环中插入常数的定义(如
dna2rna
),这只会占用循环中的处理时间 您的代码不错,但也不是非常地道。列表理解是一个很好的方法:
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
rna = ''.join([ dna2rna[base] for base in dna_template])
顺便说一句,出于卫生考虑,尽量避免在循环中插入常数的定义(如
dna2rna
),这只会占用循环中的处理时间 您的代码不错,但也不是非常地道。列表理解是一个很好的方法:
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
rna = ''.join([ dna2rna[base] for base in dna_template])
顺便说一句,出于卫生考虑,尽量避免在循环中插入常数的定义(如
dna2rna
),这只会占用循环中的处理时间 您的代码不错,但也不是非常地道。列表理解是一个很好的方法:
dna2rna = {'A':'U', 'T':'A', 'C':'G', 'G':'C'}
rna = ''.join([ dna2rna[base] for base in dna_template])
顺便说一句,出于卫生考虑,尽量避免在循环中插入常数的定义(如dna2rna
),这只会占用循环中的处理时间 查看项目的教程,然后查看与您尝试执行的操作相匹配的各种类和方法的源代码。可能重复:查看项目的教程,然后检查与您尝试执行的操作相匹配的各种类和方法的源。可能的重复:查看项目的教程,然后检查与您尝试执行的操作相匹配的各种类和方法的源。可能的重复:查看项目的教程,然后检查与您尝试执行的操作相匹配的各种类和方法的源代码。可能重复: