我想得到一个特定的点,这个点和我得到的东西相反。在
aaaaaaaa cccccccc tttttttttt gggggggggg TTTTTTTT GGGGGGGG AAAAAAAAAA CCCCCCCC
所以你需要转换坐标。在底部钢绞线上,底部0(最右侧的C)与顶部钢绞线上的底部39相对。基数1与基数38相对。基数2与案例37相反。(重要的一点:注意当你每次把这两个数相加时会发生什么。)所以基数10是以29为基数,19基数是以20为基数。在
所以:如果我想在底部找到以10-20为底的链,我可以看看顶部的以20-29为底的(然后反向补足)。在
我写了以下内容:
fp = open(infile, 'r')
for line in fp:
tokens = line.split()
exonstarts = tokens[8][:-1].split(',')
exonends = tokens[9][:-1].split(',')
zipped = list(zip(exonstarts, exonends))
chrom_len = len(chr_string)
s = ''.join(bc[base.upper()] for base in chr_string[-starts-1:-ends-1] for starts, ends in zipped)+'\n'
然而,每次我这样做我都会得到:
错误:未定义全局名称“starts”
我怎么解决这个问题??在
试着在最后一个词后面加上括号:
你在这里定义了两个不同的生成器。这相当于:
^{pr2}$你定义了exonstrats然后引用了starts,这是没有定义的。在
看起来您试图在生成器表达式中执行太多操作。在
这两个
for
是错误的。你的意思是:然后为第二个}。在
for
定义starts
和{鉴于您今天提出的问题,我建议您阅读a good book,例如Dive Into Python 3,这样您就可以自己解决这些问题了。在
相关问题 更多 >
编程相关推荐