发布时间:2019-09-20 07:27:16编辑:auto阅读(2429)
有个table文件, 有时候需要处理header , 可以用linecache 模块
#!/usr/bin/env python
# -*- coding: ascii -*-
import linecache
import fileinput
import sys
from collections import defaultdict
inputFile = sys.argv[1]
headerLine = linecache.getline(inputFile, 1).strip()
#print(headerLine)
Probenames = headerLine.split("\t")[1:]
inputH = open(inputFile, "r")
d = defaultdict(list)
for line in inputH:
if "Sample" not in line:
z = line.rstrip().split("\t")[1:]
for num, p_data in enumerate(z):
if p_data != "":
d[Probenames[num]].append(p_data)
inputH.close()
print("NameProbe\tdata")
for p in d:
for x in d[p]:
#print(x, d[p])
print("{0}\t{1}".format(p, x))当然也可以用 fileinput 模块
参考: https://docs.python.org/3/library/fileinput.html#fileinput.isfirstline
上一篇: Python_005_求1-2+3-4+
下一篇: [python基础] python与s
51296
50747
41344
38156
32627
29524
28374
23246
23212
21537
1611°
2345°
1946°
1888°
2219°
1933°
2619°
4392°
4238°
3009°