码迷,mamicode.com
首页 > 编程语言 > 详细

python读取table文件

时间:2017-12-06 14:27:25      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:python   table   linecache   header   


有个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读取table文件

标签:python   table   linecache   header   

原文地址:http://blog.51cto.com/matrix6ro/2047859

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!