gpt4 book ai didi

python - 从mysql生成python中的名称列表

转载 作者:行者123 更新时间:2023-11-30 23:24:22 26 4
gpt4 key购买 nike

我目前能够生成包含信息的文本文件,但出于某种原因我无法将数据发送到列表中。我已经尝试了两种方法:

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 []

如您所见,列表仍然是空的。我想也许光标无法跳回顶部,所以我关闭了光标并重新打开它,但在第二个实例中生成了列表。这导致脚本出错,我不知道为什么。

难道数据不能直接读入list吗?

理论上我可以将序列的名称从文本文件中分离出来,但我很好奇为什么这种方法不起作用。

最佳答案

如您所料,游标的结果集可以被读取一次,之后它就被“消耗”了。

只需先将结果放入列表中,然后遍历列表以将其内容写入文件。或者在一个循环中执行这两项操作。

关于python - 从mysql生成python中的名称列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14062289/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com