利用csv包读取和写入tsv文件

总结一下tsv文件的操作方法,备忘。

写文件

1
2
3
4
5
6
import csv

with open('file.tsv', 'w') as f:
tsv_w = csv.writer(f, delimiter='\t') # delimiter必须
tsv_w.writerow(['id', 'name', 'score']) # 单行写入
tsv_w.writerows([[1, 'Frank', 99], [2, 'John', 70]]) # 多行写入

读文件

1
2
3
4
5
6
import csv

with open('file.tsv') as f:
tsvreader = csv.reader(f, delimiter='\t')
for line in tsvreader:
print(line)

通过修改解析文件模式实现上述操作

1
2
3
4
5
6
7
8
9
10
import csv

csv.register_dialect('my_dialect',delimiter='\t',quoting=csv.QUOTE_ALL)

with open('file.tsv',) as csv_file:
file_list = csv.reader(csv_file,'my_dialect')
for line in file_list:
print (line)

csv.unregister_dialect(my_dialect) #注销