【发布时间】:2014-02-11 16:11:49
【问题描述】:
我刚开始在生物信息学研究实验室学习 python。我的第一个项目是生成一个程序,该程序可以输出具有长度和拷贝数参数的各种 DNA 序列。然后需要以 FASTA 格式输出序列。
对于那些不熟悉的人,DNA 序列可以由四个“字母”组成:A、G、C、T。 示例 DNA 序列:ACGTTCCGTACGTACTCT
我对这一切真的很陌生,我想要一些关于如何去做以及如何学习 Python 的建议(依靠教程,做随机项目等)。
我目前正在使用别人的程序进行我的 DNA 序列项目,然后我将逐行查看正在做的事情。
我在复制代码时遇到的第一个错误是:
>>> import random
>>> import sys
>>> def simulate_sequence (length) :
dna = ['A','G','C','T']
sequence = ''
for i in range (length) :
sequence += random.choice (dna)
return sequence
>>> setsize = int (sys.argv[1])
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
setsize = int (sys.argv[1])
IndexError: list index out of range
>>>
谢谢。
【问题讨论】:
-
您需要使用指定序列长度的 CLI 参数调用此代码。
-
不幸的是,如果没有对基础知识的基本了解,复制代码根本没有多大意义。我建议你在潜入之前先拿起一本书。
-
从官方教程开始,它包含你需要知道的一切! docs.python.org/2.7/tutorial/index.html
-
不知道原代码是谁写的,但
simulate_sequence函数无非就是''.join(random.choice('AGCT') for _ in range(length))。 -
谢谢大家。我浏览了thenewboston 的python 教程。我对正在发生的事情有一个基础,但我有很多练习......我想我会在我的实验室从事项目的同时继续阅读 Python 书籍。
标签: python random generator bioinformatics dna-sequence