Python使用defaultdict读取文件各列的方法


Posted in Python onMay 11, 2017

本文实例讲述了Python使用defaultdict读取文件各列的方法。分享给大家供大家参考,具体如下:

#!/usr/bin/python
"""USAGE: python *.py align_SNP_site out_file"""
import sys
#import time
from collections import Counter
#t0=time.clock()
info=open(sys.argv[1])
fast=sys.argv[2]
d_c = {}
d1={}
d2={}
for line in info:
    cols=line.strip().split("\t")
    if cols[0] == "SNP pattern":
        continue
    else:
        d1.setdefault(cols[4],[]).append(cols[1])
        d2.setdefault(cols[7],[]).append(cols[1])
    #d1.setdefault(cols[0],[]).append(cols[5])
    #d2[cols[0]] = "\t".join(cols[0:3])
info.close()
print len(d1)
print len(d2)
my_list=[]
ref_fa = open("some_example.fasta", 'r')
for i in ref_fa.readlines():
    if i.startswith(">"):
        my_list.append(i.rstrip())
ref_fa.close()
print len(my_list)
#sys.exit()
result = open(fast,'w')
for k,v in d1.iteritems():
    cnt1 = Counter(v)
    #print cnt1
    result.write("%s\t" % k)
    for i in sorted(cnt1.items(), key = lambda x: x[1], reverse=True):
        result.write("%s\t%d\t"%(i[0],i[1]))
    result.write("\n")
for k,v in d2.iteritems():
    cnt2 = Counter(v)
    #print cnt2
    result.write("%s\t" % k)
    for i in sorted(cnt2.items(), key = lambda x: x[1], reverse=False):
        result.write("%s\t%d\t"%( i[0],i[1]))
    result.write("\n")
#t1=time.clock()
#print (t1-t0)

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python面向对象编程中的类和对象学习教程
Mar 30 Python
利用python生成一个导出数据库的bat脚本文件的方法
Dec 30 Python
局域网内python socket实现windows与linux间的消息传送
Apr 19 Python
简单了解django orm中介模型
Jul 30 Python
修改Pandas的行或列的名字(重命名)
Dec 18 Python
关于Python中定制类的比较运算实例
Dec 19 Python
python 的numpy库中的mean()函数用法介绍
Mar 03 Python
Python导入模块包原理及相关注意事项
Mar 25 Python
如何在scrapy中集成selenium爬取网页的方法
Nov 18 Python
用ldap作为django后端用户登录验证的实现
Dec 07 Python
使用sublime text3搭建Python编辑环境的实现
Jan 12 Python
Python实现学生管理系统(面向对象版)
Jun 24 Python
python中nan与inf转为特定数字方法示例
May 11 #Python
Python和C/C++交互的几种方法总结
May 11 #Python
Python常用时间操作总结【取得当前时间、时间函数、应用等】
May 11 #Python
详解Python读取配置文件模块ConfigParser
May 11 #Python
python如何获取服务器硬件信息
May 11 #Python
浅谈Python基础之I/O模型
May 11 #Python
老生常谈Python进阶之装饰器
May 11 #Python
You might like
php下载远程文件类(支持断点续传)
2008/11/14 PHP
javascript 小型动画组件与实现代码
2010/06/02 PHP
如何使用PHP计算上一个月的今天
2013/05/23 PHP
php实现的mongodb操作类实例
2015/04/03 PHP
php+curl 发送图片处理代码分享
2015/07/09 PHP
PHP代码实现表单数据验证类
2015/07/28 PHP
php接口技术实例详解
2016/12/07 PHP
深入理解JavaScript系列(14) 作用域链介绍(Scope Chain)
2012/04/12 Javascript
Javascript Boolean、Nnumber、String 强制类型转换的区别详细介绍
2012/12/13 Javascript
jquery左右全屏大尺寸多图滑动效果代码分享
2015/08/28 Javascript
javascript iframe跨域详解
2016/10/26 Javascript
bootstrap网格系统使用方法解析
2017/01/13 Javascript
Canvas实现微信红包照片效果
2018/08/21 Javascript
微信小程序手机号码验证功能的实例代码
2018/08/28 Javascript
微信小程序ibeacon三点定位详解
2018/10/31 Javascript
了解JavaScript中let语句
2019/05/30 Javascript
Python利用heapq实现一个优先级队列的方法
2019/02/03 Python
详解Python3 对象组合zip()和回退方式*zip
2019/05/15 Python
django基于存储在前端的token用户认证解析
2019/08/06 Python
python输出决策树图形的例子
2019/08/09 Python
python中删除某个元素的方法解析
2019/11/05 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
2021/01/23 Python
纽约手袋品牌:KARA
2018/03/18 全球购物
美国领先的在线旅游网站:Orbitz
2018/11/05 全球购物
马来西亚在线购物市场:PGMall.my
2019/10/13 全球购物
美国一家著名的手表在线折扣网站:Discount Watch Store
2020/02/24 全球购物
元旦红领巾广播稿
2014/02/19 职场文书
yy生日主持词
2014/03/20 职场文书
毕业自我鉴定怎么写
2014/03/25 职场文书
云台山导游词
2015/02/03 职场文书
员工开除通知书
2015/04/25 职场文书
刑事起诉书范文
2015/05/19 职场文书
光荣之路观后感
2015/06/12 职场文书
《雷雨》教学反思
2016/02/20 职场文书
Python中json.dumps()函数的使用解析
2021/05/17 Python
vue实现简易音乐播放器
2022/08/14 Vue.js