python创建新文件-如何在python中编辑文件并创建一个新的文件?
我有一个很大的文本文件(分隔的),就像下面这个小例子:>ENST00000511961.1|ENSG00000013561.13|OTTHUMG00000129660.5|OTTHUMT00000370661.3|RNF14-003|RNF14|278
MSSEDREAQEDELLALASIYDGDEFRKAESVQGGETRIYLDLPQNFKIFVSGNSNECLQNSGFEYTICFLPPLVLNFELPPDYPSSSPPSFTLSGKWLSPTQLSALCKHLDNLWEEHRGSVVLFAWMQFLKEETLAYLNIVSPFELKIGSQKKVQRRTAQASPNTELDFGGAAGSDVDQEEIVDERAVQDVESLSNLIQEILDFDQAQQIKCFNSKLFLCSICFCEKLGSECMYFLECRHVYCKACLKDYFEIQIRDGQVQCLNCPEPKCPSVATPGQ
>ENST00000506822.1|ENSG00000013561.13|OTTHUMG00000129660.5|OTTHUMT00000370662.1|RNF14-004|RNF14|132
MSSEDREAQEDELLALASIYDGDEFRKAESVQGGETRIYLDLPQNFKIFVSGNSNECLQNSGFEYTICFLPPLVLNFELPPDYPSSSPPSFTLSGKWLSPTQLSALCKHLDNLWEEHRGSVVLFAWMQFLKE
>ENST00000513019.1|ENSG00000013561.13|OTTHUMG00000129660.5|OTTHUMT00000370663.1|HAS-0|HAS|99
MSSEDREAQEDELLALASIYDGDEFRKAESVQGGETRIYLDLPQNFKIFVSGNSNECLQNSGFEYTICFLPPLVLNFELPPDYPSSSPPSFTLSGKWLS
>ENST00000356143.1|ENSG00000013561.13|OTTHUMG00000129660.5|-|HAS-202|HAS|474
MSSEDREAQEDELLALASIYDGDEFRKAESVQGGETRIYLDLPQNFKIFVSGNSNECLQNSGFEYTICFLPPLVLNFELPPDYPSSSPPSFTLSGKWLSPTQLSALCKHLDNLWEEHRGSVVLFAWMQFLKEETLAYLNIVSPFELKIGSQKKVQRRTAQASPNTELDFGGAAGSDVDQEEIVDERAVQDVESLSNLIQEILDFDQAQQIKCFNSKLFLCSICFCEKLGSECMYFLECRHVYCKACLKDYFEIQIRDGQVQCLNCPEPKCPSVATPGQVKELVEAELFARYDRLLLQSSLDLMADVVYCPRPCCQLPVMQEPGCTMGICSSCNFAFCTLCRLTYHGVSPCKVTAEKLMDLRNEYLQADEANKRLLDQRYGKRVIQKAL>ENST00000511961.1|ENSG00000013561.13|OTTHUMG00000129660.5|OTTHUMT00000370661.3|RNF14-003|RNF14|278
MSSEDREAQEDELLALASIYDGDEFRKAESVQGGETRIYLDLPQNFKIFVSGNSNECLQNSGFEYTICFLPPLVLNFELPPDYPSSSPPSFTLSGKWLSPTQLSALCKHLDNLWEEHRGSVVLFAWMQFLKEETLAYLNIVSPFELKIGSQKKVQRRTAQASPNTELDFGGAAGSDVDQEEIVDERAVQDVESLSNLIQEILDFDQAQQIKCFNSKLFLCSICFCEKLGSECMYFLECRHVYCKACLKDYFEIQIRDGQVQCLNCPEPKCPSVATPGQ
>ENST00000356143.1|ENSG00000013561.13|OTTHUMG00000129660.5|-|HAS-202|HAS|474
MSSEDREAQEDELLALASIYDGDEFRKAESVQGGETRIYLDLPQNFKIFVSGNSNECLQNSGFEYTICFLPPLVLNFELPPDYPSSSPPSFTLSGKWLSPTQLSALCKHLDNLWEEHRGSVVLFAWMQFLKEETLAYLNIVSPFELKIGSQKKVQRRTAQASPNTELDFGGAAGSDVDQEEIVDERAVQDVESLSNLIQEILDFDQAQQIKCFNSKLFLCSICFCEKLGSECMYFLECRHVYCKACLKDYFEIQIRDGQVQCLNCPEPKCPSVATPGQVKELVEAELFARYDRLLLQSSLDLMADVVYCPRPCCQLPVMQEPGCTMGICSSCNFAFCTLCRLTYHGVSPCKVTAEKLMDLRNEYLQADEANKRLLDQRYGKRVIQKAL
如何修复它吗?from __future__ import print_function
import sys
def parse_fasta(data):
name, seq = None, []
for line in data:
line = line.rstrip()
if line.startswith('>'):
if name:
yield (name, ''.join(seq))
name, seq = line, []
else:
seq.append(line)
if name:
yield (name, ''.join(seq))
isoforms = dict()
for defline, sequence in parse_fasta(sys.stdin):
geneid = '.'.join(defline[1:].split('.')[:-1])
if geneid in isoforms:
otherdefline, othersequence = isoforms[geneid]
if len(sequence) > len(othersequence):
isoforms[geneid] = (defline, sequence)
else:
isoforms[geneid] = (defline, sequence)
for defline, sequence in isoforms.values():
print(defline, sequence, sep=' ')
python创建新文件-如何在python中编辑文件并创建一个新的文件?相关推荐
- 如何用java创建超链接_Java如何在PPT中的幻灯片上创建超链接?
在Java编程中,如何在PPT中的幻灯片上创建超链接? 注意:需要访问网址:http://poi.apache.org/download.html , 下载一个Apache POI软件包.这里下载最新 ...
- 如何在Leangoo中,为企业创建项目
Leangoo(中文名:领歌)是一款基于看板的项目协作工具. 我们可以使用 Leangoo 可视化地进行项目需求.任务.问题和文档的管理和协作,随时随地跟踪团队工作进展.Leangoo 工具的设计融入 ...
- 【童晶老师《Python游戏趣味编程》在PyCharm中编辑】
童晶老师<Python游戏趣味编程>在PyCharm中编辑 不想再 海归编辑器 里编辑,想在PyCharm 中编辑要安装什么库 安装库三个库 安装完成,开始运行 不想再 海归编辑器 里编辑 ...
- 如何在Mercurial中编辑错误的提交消息? [重复]
本文翻译自:How to edit incorrect commit message in Mercurial? [duplicate] This question already has answe ...
- html按钮怎么修改大小设置吗,如何在HTML中编辑按钮大小?
如何在HTML中编辑按钮大小?使用HTML设计按钮之类的东西不是首选的方式.(1999年我开始建网站的时候,我们就是这么做的,但是现在有更好的方法了.) 我假定您不熟悉CSS以及如何将CSS文件导入到 ...
- 如何在PowerPoint中编辑页眉和页脚
Headers and footers in PowerPoint are ideal for displaying descriptive content, such as slide number ...
- [算法] 求排列组合: 从n个数中任选m个数组成一个新数
#include <iostream> #include <vector>using namespace std;// 求排列组合算法: C(n, m): 从n个数中任选m个数 ...
- 使用layui 做后台管理界面,在Tab中的链接点击后添加一个新TAB的解决方法
使用layui 做后台管理界面,在Tab中的链接点击后添加一个新TAB的解决方法 参考文章: (1)使用layui 做后台管理界面,在Tab中的链接点击后添加一个新TAB的解决方法 (2)https: ...
- vue 中遍历数组对象 存到一个新数组里
vue 中遍历数组对象 存到一个新数组里(亲测可行!!!) 参考文档 : MDN-解构赋值 方法一 : For of 迭代和解构 var people = [{name: 'Mike Smith',f ...
- c语言两个线性表la lb,有两个集合用两个线性表LA和LB表示即线性表中的数据元素即为集合中的成员现要求一个新的集合...
<有两个集合用两个线性表LA和LB表示即线性表中的数据元素即为集合中的成员现要求一个新的集合>由会员分享,可在线阅读,更多相关<有两个集合用两个线性表LA和LB表示即线性表中的数据元 ...
最新文章
- SpringBoot+ElementUI实现多选设置一月中指定几天的属性,SpringBoot中通过反射实现
- 如何做一场高质量的分享?
- 阿加莎·克莉丝蒂与我们
- npm run dev 在本地调试出现跨域问题解决方法
- oracle11g创建闪回分区多大,Oracle闪回区大小预估
- 将数组项复制到另一个数组中
- 怎样做好一个项目经理
- oracle创建默认序列号,PLS-00103:为序列号oracle创建触发器(PLS-00103: Create trigger for sequence number oracle)...
- Python使用jieba库实现分词统计词频
- 10 个最佳 GIS 软件应用程序
- 《互联网大厂晋升指南》读书笔记-上
- 算法的稳定性matlab,基于MATLAB地震反应谱数值算法的稳定性和精度分析
- [附源码]计算机毕业设计JAVA房屋中介管理系统
- 高通SDX55平台:Modem Loopback测试指导
- 计算机键盘重复,win10系统电脑键盘打字时总是出现重复字符的还原方法
- 【数据库02】==== 表的增删改查(基础)
- Ubuntu20.04+Linux5.8.8 添加系统调用实现进程隐藏
- jquery中的事件
- DLL 导入的两种方式
- 用matlab解出冲激响应的表达式,Matlab实验指导书