1
현재 정보로 텍스트 파일을 생성 할 수는 있지만 어떤 이유로 데이터를리스트로 보낼 수 없습니다. 나는 2 가지 방법을 시도했다 :mysql에서 파이썬으로 이름 목록 생성하기
cnx = mysql.connector.connect(user='root', database='smor')
cursor = cnx.cursor()
sqlQuery = ("SELECT id,name,CAST(aa_seq as CHAR(65535)) aa_seq FROM smor.domain_tbl WHERE domain_type_id=5 AND domain_special IS NULL LIMIT 100000")
cursor.execute(sqlQuery)
print "Generating FASTA file: ", FASTA_File1
with open(FASTA_File1, "w") as FASTA1:
for (aa_id, name, aa_seq) in cursor:
FASTA1.write(">" + name + '\n' + aa_seq + '\n')
print ">" + name + '\n' + aa_seq
ListOfNames =[]
for (aa_id, name, aa_seq) in cursor:
ListOfNames.append(name)
cursor.close()
print "ListOfNames", ListOfNames
이것은 성공적으로 이름과 아미노산 서열을 텍스트 파일에 인쇄하지만 문자열은 비어있다. 다음은 콘솔 출력의 마지막 줄입니다.
>NC_018581.1_05_011_001_020 P
RVPGEMYERAEDGALIPTGVRARWVDAPGSRREIVGPIARHPRIDGRRVDLDVVEEALAAVTGVTAAAVVGLPTDDGVEVGACVVLDRDDLDVPGLRRELSQTLAAHCVPTMISIVESIPLGTDGRPDHGEV
ListOfNames []
목록에서 볼 수 있듯이 비어 있습니다. 커서가 위로 올라가서 커서를 닫고 위와 똑같이 재개했지만 두 번째 인스턴스의 목록 생성과 함께 다시 열 수 있다고 생각했습니다. 이 스크립트에서 오류가 발생하고 이유를 모르겠습니다.
데이터를 목록으로 직접 읽을 수 없습니까?
이론적으로 텍스트 파일에서 시퀀스의 이름을 나눌 수 있지만이 방법이 작동하지 않는 이유가 궁금합니다.