<패치노트>
- 꺾쇠(>)가 하나인 FASTA 파일 한정으로 읽어올 수 있습니다. (Biopython이 꺾쇠 개수에 따라 불러오는 방식이 다름)
- FASTA 파일을 불러올 경우, 시퀀스 이름란에 FASTA file의 ID영역이 들어갑니다. (사실 description 넣으려다가 너무 길어서…)
- FASTA 파일을 불러오는 데 성공할 경우에도 멘트가 출력됩니다. (실패할때는 당연히 출력됨)
코드
from argparse import FileType
import tkinter
from tkinter import filedialog
from Bio import SeqIO
# 정신사나워서 불러오는거랑 표 분리했습니다...OTL
창 하나 띄우는데 뭐가 이렇게 필요함…? (맨 밑줄은 Biopython)
FASTA_open = input('FASTA 파일을 불러오시겠습니까? 불러오실거면 FASTA 혹은 fasta를 임력해주세요. ').upper()
if FASTA_open == 'FASTA':
root = tkinter.Tk()
root.withdraw()
dir_path = filedialog.askopenfilename(parent=root,initialdir="/home/koreanraichu",title='Please select a directory',filetypes = (("*.fasta","*fasta"),("*.faa","*faa")))
try:
fasta_read = SeqIO.read(dir_path,'fasta')
sequence_name = fasta_read.id
sequence = str(fasta_read.seq)
# 단식으로만 가져오게 함.
print(dir_path,'FASTA 파일을 가져왔습니다! ')
except:
print('이 FASTA파일은 한 파일에 여러 개가 기록되어 있어서 가져올 수 없습니다! ')
# 그래서 parse로 가져와야 하는 파일이면 에러떠여
else:
sequence_name = input("검색할 시퀀스의 이름을 입력해주세요: ")
sequence = input("검색할 시퀀스를 입력해주세요: ")
# 시퀀스 입력하는 란
Finder의 경우 효소 입력받는 변수도 위로 빼버렸다.
Cutter(with FASTA, Cutter는 이름에만 시퀀스 이름이 들어간다)
Finder(with FASTA)
음… 사용자가 FASTA 파일을 열었는지, 아니면 직접 썼는지 알려줘도 될 것 같음. 그거랑 별개로 NEB cutter처럼 NEB에서 파는 효소만 필터링하는 기능도 있으면 좋을 것 같고…
Reply