继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

python读取table文件

BIG阳
关注TA
已关注
手记 474
粉丝 73
获赞 458


有个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 模块

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP