【发布时间】:2014-08-14 18:18:57
【问题描述】:
能否请我就如何将我的输出写入制表符分隔格式获得建议?我正在将 csv 文件与字典进行比较。这是我的代码(这是我有问题的代码的结尾):
import csv
file3 = open(r'file.csv','rt', newline = '')
baits = csv.reader(file3, delimiter = '\t')
file4 = open(r'file.txt','wt', newline = '')
common = csv.writer(file4, delimiter = '\t')
for line in baits:
chromosome = line[0]
start = int(line[1])
end = int(line[2])
if chromosome in dmc:
for value in dmc[chromosome]:
base = value[0]
others = value[1:]
if base >= start and base <= end:
count_in += 1
common.writerow(line + [base, others])
file3.close()
file4.close()
这是我的输出示例:
chr1 3505353 3505472 3505390 (['3505390', '-', '3.32682966730502e-08', '1.69470366570212e-07', '-35.4239256678281', '1', '156190', 'NM_001011874', '-'],)
chr1 3601312 3601671 3601347 (['3601347', '-', '1.94815734655407e-08', '1.01925267518696e-07', '-40.8010680907877', '2', '60233', 'NM_001011874', '-'],)
我在尝试摆脱大括号和 '' 时遇到问题,以便大括号中的每个值都是制表符分隔的。
有人知道可以修改代码来实现吗?
谢谢!
【问题讨论】:
-
你的代码中 file3 和 file4 的意义何在?您没有在数据处理器中使用任何一个。
DMR_DMC是您的输出文件吗?如果是这样,它是否引用了csv.writer对象? -
对不起。那是一个错字。
-
如果你不能向我们展示一个包含完整数据的MCVE,你至少可以做一个
print(repr(line), repr(value))并给我们一个例子,这样我们就知道你想要输出什么类型和它们采用什么格式? -
如果知道
dmc字典中的值是什么——列表、元组?
标签: python csv dictionary output