![v2-ad38c6af2de46e522ef3d13f166c7d6c_1440w.jpg?source=172ae18b](http://img-01.proxy.5ce.com/view/image?&type=2&guid=9e2a5cff-1330-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-ad38c6af2de46e522ef3d13f166c7d6c_1440w.jpg?source=172ae18b)
博主是一个刚刚接触生信的新手,正在学习Linux和Python,偶尔会在该博客上面发布自己练习编程写的脚本,用来记录自己的学习之路。
介绍
根据序列的ID号从FASTA文件中批量提取序列是在平时常常要做的工作,Linux当中grep和awk工具、Perl语言和Python语言,以及samtools等都可以实现,以下是博主用Python实现的从FASTA文件中批量提取序列的脚本。
说明
- 需要用到fasta文件和ID的list文件。
- 所要提取的序列的ID需要提前写进一个文件中,每行一个。
- 提取结果也以文件的格式保存,默认为result.fa
脚本如下
1. 采用click模块添加命令行参数。
# -*- coding: utf-8 -*-
2. 另一种方法,将FASTA文件中的序列导入字典中进行查找,速度远快于上一种。
# -*- coding: utf-8 -*-
3. 第三种方法,与第二种方法实现功能的核心算法一样,加入了getopt模块,可添加命令行参数。
import
4. 实现功能的算法与方法一相同,通过fire模块解析命令行参数。
import
博主也是刚刚学习Python,如有错误,欢迎指正~