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


相关推荐: Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  如何在阿里云部署织梦网站?  Swift中swift中的switch 语句  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  如何在 Pandas 中基于一列条件计算另一列的分组均值  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  Python文本处理实践_日志清洗解析【指导】  EditPlus中的正则表达式实战(5)  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  如何快速打造个性化非模板自助建站?  iOS中将个别页面强制横屏其他页面竖屏  原生JS实现图片轮播切换效果  如何在阿里云通过域名搭建网站?  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  php 三元运算符实例详细介绍  如何在腾讯云免费申请建站?  Python数据仓库与ETL构建实战_Airflow调度流程详解  Firefox Developer Edition开发者版本入口  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  Java类加载基本过程详细介绍  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  百度浏览器如何管理插件 百度浏览器插件管理方法  JavaScript数据类型有哪些_如何准确判断一个变量的类型  *服务器网站为何频现安全漏洞?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  微信小程序 HTTPS报错整理常见问题及解决方案  如何在阿里云域名上完成建站全流程?  Laravel如何实现API版本控制_Laravel版本化API设计方案  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  Laravel如何处理文件下载请求?(Response示例)  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  如何在新浪SAE免费搭建个人博客?  香港服务器租用每月最低只需15元?  QQ浏览器网页版登录入口 个人中心在线进入  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  Android利用动画实现背景逐渐变暗  Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  java中使用zxing批量生成二维码立牌  LinuxCD持续部署教程_自动发布与回滚机制  如何快速生成凡客建站的专业级图册?  三星、SK海力士获美批准:可向中国出口芯片制造设备  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理