簡體   English   中英

DNA序列操作

[英]DNA sequence manipulations

所以我對編程非常陌生,我對任何編程語言都不是很精通。 我為生物學家買了一本關於編程的書,我摸索了一些東西。 我想:從文件中獲取序列並從中找到並提取可變區域。 我的代碼如下:

**

#!/usr/bin/python
#for extracting GAA sequences
import os
import sys
import re
#opens sequence file and defines it as reps
reps = open('142sequences.txt')
#defining what to read
line = reps.readlines()
#defines what we are looking for in rep lines
for line in reps:
    sear = re.search(r"C[A]{2,}G[ATCG]{17, 2700}AAT[A]{2,4}G[A]{2,}", reps)
    if sear:
        repeats = sear.group()
        print(repeats)
    else:
        print('Not Recognized')

** 我沒有得到任何回報。 請幫忙

您需要搜索每一行而不是代表,這是所有行的列表:

with open('142sequences.txt') as reps:
    # iterate over each line in the file
    for line in reps:
        # pass each line to re.search
        sear = re.search(r"C[A]{2,}G[ATCG]{17, 2700}AAT[A]{2,4}G[A]{2,}", line)
        if sear:
            repeats = sear.group()
            print(repeats)
        else:
            print('Not Recognized')

調用readlines將所有行讀入一個列表中,因此您實際上永遠不會在自己的代碼中循環,因為您會在初始 readlines 調用中使用迭代器,如果您進行了循環,則會導致錯誤,因為您必須傳遞一個字符串而不是一個要搜索的列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM