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

发布时间 - 2026-01-11 01:05:00    点击率:

本文实例讲述了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文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

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


# Python  # defaultdict  # 读取  # 文件  # 各列  # 在Python中使用defaultdict初始化字典以及应用方法  # Python中的defaultdict与__missing__()使用介绍  # Python标准库defaultdict模块使用示例  # Python 中的 Counter 模块及使用详解(搞定重复计数)  # Python中collections.Counter()的具体使用  # Python中使用Counter进行字典创建以及key数量统计的方法  # Python中使用defaultdict和Counter的方法  # 操作技巧  # 进阶  # 相关内容  # 感兴趣  # 数据结构  # 给大家  # 更多关于  # 所述  # 程序设计  # 使用技巧  # 文本文件  # 编程技巧  # 讲述了  # clock  # info  # open  # time  # collections  # Counter  # argv 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: iOS验证手机号的正则表达式  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  如何快速配置高效服务器建站软件?  制作公司内部网站有哪些,内网如何建网站?  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  如何在宝塔面板中修改默认建站目录?  如何在 Pandas 中基于一列条件计算另一列的分组均值  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  英语简历制作免费网站推荐,如何将简历翻译成英文?  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  如何为不同团队 ID 动态生成多个“认领值班”按钮  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  新三国志曹操传主线渭水交兵攻略  微信小程序 scroll-view组件实现列表页实例代码  实例解析angularjs的filter过滤器  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  三星、SK海力士获美批准:可向中国出口芯片制造设备  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  如何用PHP工具快速搭建高效网站?  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  Laravel如何实现一对一模型关联?(Eloquent示例)  微信推文制作网站有哪些,怎么做微信推文,急?  如何用wdcp快速搭建高效网站?  如何在万网自助建站平台快速创建网站?  JavaScript数据类型有哪些_如何准确判断一个变量的类型  教你用AI将一段旋律扩展成一首完整的曲子  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  网页设计与网站制作内容,怎样注册网站?  三星网站视频制作教程下载,三星w23网页如何全屏?  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  Laravel如何与Inertia.js和Vue/React构建现代单页应用  如何在腾讯云服务器快速搭建个人网站?  如何在阿里云高效完成企业建站全流程?  Laravel如何使用Collections进行数据处理?(实用方法示例)  微信小程序制作网站有哪些,微信小程序需要做网站吗?  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  如何正确选择百度移动适配建站域名?  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  如何快速辨别茅台真假?关键步骤解析  Python企业级消息系统教程_KafkaRabbitMQ高并发应用  如何有效防御Web建站篡改攻击?  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  JavaScript中的标签模板是什么_它如何扩展字符串功能