2018-06-24(生信第一题)

编程能力真的有待提高

第一题是Rosalind上的一道题


2018-06-24(生信第一题)_第1张图片

给出一条DNA序列,求ATCG四个碱基分别出现的次数

我写了一个脚本,很差,还运行不了


2018-06-24(生信第一题)_第2张图片
2018-06-24(生信第一题)_第3张图片

参考生信技能书论坛上一个人的脚本:


2018-06-24(生信第一题)_第4张图片

于是,将我原来的脚本加以改善:


2018-06-24(生信第一题)_第5张图片

总结一下:

1.原理一样,都是利用字典来计数,我的错误在于最开始的时候想到的是用while循环,利用字符串的长度作为限制条件,来进行遍历,实际,利用for语句进行遍历才是最合适的。

for i in line.strip()

2.我的脚本最开始的5行,其实用一句话就可以代替,aDict={i:0 for i in 'ATCG'},要学会这种表达

3.当然,计数这件事能想到的肯定还有count()这种方法


2018-06-24(生信第一题)_第6张图片



总之,好久没用python了,未来一段时间,每天都来写一个小的python脚本吧,让编程能力慢慢得到提高

你可能感兴趣的:(2018-06-24(生信第一题))