【发布时间】:2021-03-23 20:06:10
【问题描述】:
我有一个代码可以遍历文本,并告诉我找到每个 dna STR 的最大次数。能够将这些值与 CSV 文件匹配的唯一步骤是将它们存储到列表中,但我无法这样做。当我运行代码时,每个 STR 序列的最大值都是独立打印的。 我试图将这些值“附加”到一个列表中,但我没有成功,因此,我无法将它与 CSV 的 dna 序列(大或小)匹配。 非常感谢任何帮助或建议! 这是我的代码,以及使用“text 1”和“small csv”得到的结果: `
import cs50
import sys
import csv
import os
if len(sys.argv) != 3:
print("Usage: python dna.py data.csv sequence.txt")
csv_db = sys.argv[1]
file_seq = sys.argv[2]
with open(csv_db, newline='') as csvfile: #with open(csv_db) as csv_file
csv_reader = csv.reader(csvfile, delimiter=',')
header = next(csv_reader)
i = 1
while i < len(header):
STR = header[i]
len_STR = len(STR)
with open(file_seq, 'r') as my_file:
file_reader = my_file.read()
counter = 0
a = 0
b = len_STR
list = []
for text in file_reader:
if file_reader[a:b] != STR:
a += 1
b += 1
else:
counter += 1
a += len_STR
b += len_STR
list.append(counter)
print(list)
i += 1
`
【问题讨论】:
标签: python-3.x cs50 dna-sequence