有個table文件, 有時候須要處理header , 能夠用linecache 模塊html
#!/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 模塊python
參考: https://docs.python.org/3/library/fileinput.html#fileinput.isfirstlineapp