erwewwe 发表于 2017-12-7 14:59:37

python读取table文件

有个table文件, 有时候需要处理header , 可以用linecache 模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env python
# -*- coding: ascii -*-
import linecache
import fileinput
import sys
from collections import defaultdict
inputFile = sys.argv
headerLine = linecache.getline(inputFile, 1).strip()
#print(headerLine)
Probenames = headerLine.split("\t")
inputH = open(inputFile, "r")

d = defaultdict(list)
for line in inputH:
    if "Sample" not in line:
      z = line.rstrip().split("\t")
      for num, p_data in enumerate(z):
            if p_data != "":
                d].append(p_data)
inputH.close()
print("NameProbe\tdata")
for p in d:
    for x in d:
      #print(x, d)
      print("{0}\t{1}".format(p, x))





当然也可以用 fileinput 模块

参考:https://docs.python.org/3/library/fileinput.html#fileinput.isfirstline

页: [1]
查看完整版本: python读取table文件