Perl语言在生物信息学中的应用ppt课件

上传人:资****亨 文档编号:130020399 上传时间:2020-04-24 格式:PPT 页数:52 大小:770KB
返回 下载 相关 举报
Perl语言在生物信息学中的应用ppt课件_第1页
第1页 / 共52页
Perl语言在生物信息学中的应用ppt课件_第2页
第2页 / 共52页
Perl语言在生物信息学中的应用ppt课件_第3页
第3页 / 共52页
Perl语言在生物信息学中的应用ppt课件_第4页
第4页 / 共52页
Perl语言在生物信息学中的应用ppt课件_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《Perl语言在生物信息学中的应用ppt课件》由会员分享,可在线阅读,更多相关《Perl语言在生物信息学中的应用ppt课件(52页珍藏版)》请在金锄头文库上搜索。

1、PERL在生物信息学中的应用 生物信息学与生物统计学系 主要内容 PERL简介PERL脚本的编写PERL变量Perl语法PERL与正则表达式PERL示例 PERL释义 PracticalExtractionandReportLanguage实用摘录和报告语言 但它其实不是缩写 LarryWall 1987 12 18 Perl的历史 Perl的环境准备 Unix 大多数内置一些软件也内置perl 比如apache oracleWindows ActivePerl5 10 0 Perl的工具 编辑工具 notepad viIDE Komodo PerlDevKitCGI Topperlstudi

2、o Perlbuilder perledit perlwiz Mod perl Perl的功能 脚本语言 解释执行 无需编译具有编译语言如c Java的功能 又有shell脚本的方便无数据类型区分 适于不太复杂的程序适于不要求速度 不在乎内存CPU等系统资源的任务强大的字符串处理功能灵活或复杂的正则表达式大多数平台支持 除了专用模块 可在不同平台运行 Perl的应用 Web编程 CGI XML处理系统管理网络编程 安全脚本 数据库管理图像处理其他众多的领域 一个示例 usr bin perlPrint Thisismyfirstperlprogram n a Print a 第一行 usr b

3、in perl由什么程序执行以下的内容注释 输入 输出 print a 变量 无需指定数据类型 perl的四种变量 Scalar 标量 以 开始 后面以字母或 开头 再后面可以是字母或数字array 数组 列表 以 开头Hash 哈希 散列 以 开头文件 大写字母区分大小写 Var VAR var内置变量 等 字符串变量 由双引号或单引号标识的一组字符组成 最少0个字符 为空串 最多可以占满内存 末尾不含null 0 str ing str ing string记住一些常用的转义字符print the varis var 注意单引号的用法 不替换 不转义 var str print thisi

4、s var thisisstr print thisis var thisis var 变量初值 未创建时状态为undef 到达文件尾也为undef说明变量为未定义 undef a 用在条件判断中 if undef a 代替不关心的变量 s a b c d a1 undef undef d1 split s 如果有undef变量又不知在哪 可加 w参数进行提示 usr bin perl w创建后状态为defined一般用在条件判断中if defined a 整数初值为0 字符串初值为空串 一般未赋值就使用时 result undefined 2 相关函数 length 字符串长度uc lc u

5、cfirst lcfirst 改变大小写函数substr index pos 字符串函数sin等三角函数rand srand 随机发生函数 lastchar chop str 截去最后一个字符 result chomp str 截去末尾的行分隔符 通常为 n 行分隔符由 定义 控制结构 if condition1 elsif condition2 else unless until do until while do while for foreach循环语句 foreach 语法 foreach w list array statement 内可以是数组 a 也可以是列表 1 2 3 数组元

6、素值可以修改 列表则是常量 w不影响本来已定义的变量 w 循环结束后恢复可以用 a a 用相同的变量名称示例 foreach a a 用于数组foreach a 1 2 3 4 用于列表foreach k keys h 用于哈希 散列foreach a a 1 2 4 仅对数组部分元素foreach a 缺省循环变量为 循环控制 last 退出循环next 进入下一循环redo 重新执行本次循环goto 跳转continue statement 单行条件语句与循环语句 print aif a 0 print aunless a 0 print awhile a 0 print auntil a

7、 0 用 die函数 在控制台标准错误输出信息后退出程序 warn 输出信息后不退出程序 只起警报作用 内部变量 包含错误代码 内部变量 包含错误信息 列表 数组的形式 形式 1 a 2 3 a x 1 其元素可以是数字 字符串 变量 表达式空列表 单元素列表 2 不同于标量2qw 1 astr 可以用其他符号表示 如元素可以是数值 变量 不带引号的字符串 中间用空格分开 范围表示的列表 范围运算符 每次增加1 如1 3 1 6 1 2 3 4 5 6 1 2 5 6 1 2 3 4 5 6 3 3 3 2 4 5 3 2 4 3 4 4 4 4 5 1 6 aa ad aa ab ac ad

8、 month 01 31 a a 3 3 4 5 6 if a 3 数组 列表的存储 a 1 2 3 不同于 a 初始值为 元素形式 a 0 表示第一个元素 索引从0开始 a 1 表示倒数第一个元素数组的赋值 a 1 2 3 4 b a b 2 3 a 1 a 4 a 从屏幕输入进行赋值 按下CTRL d结束改变元素的值 a 1 3 超出数组大小的元素赋值 a 5 6 自动增长 其他元素为NULL读取不存在的元素为空 b a 6 数组的读出 a 1 2 3 a a 1 x y z a x 1 y 2 z 3 x y a x 1 y 2 a b c d a a 1 b 2 c 3 d a a a

9、 1 a为数组长度 a为数组的最后一个元素的索引 a a 数组的第一个元素 a 0 打印数组 print a 元素直接相连print a 元素之间用空格分开 数组片段 a 1 5 sub a 0 1 3 a 1 3 a b b 1 2 3 sub a b a 1 2 a 2 1 a 1 2 3 a 3 2 4 数组操作函数 sort 缺省按字母排序 a b表示数组元素 代表数组本身reverse a 取数组的逆序chop a 每个元素截去最后一个字符shift a 删除数组第一个元素并返回该值 缺省对 ARGV数组unshift a 在数组头部添加元素 返回新数组长度push a a 在数组末

10、尾添加元素pop a 删除数组末尾元素 数组操作函数 二 join 连接符号 a 把数组连接为一个字串 a a b join a a b split 分隔符 分割串 长度 分隔符 缺省为空格 可省略分割串 缺省为 可省略长度 可省略 缺省为全部分割 s a b c a split s a a b c a split s 2 a a b c 数组函数 三 splice函数 ret splice a skip length newlist 对数组 a进行操作 跳过skip个元素 然后用 newlist替换length个元素 newlist长度可以不为length 但其替换长度总为length如果l

11、ength 0表示为插入 如果 newlist 则表示为删除当length和 newlist都省略时表示全部删除 found grep pattern search 对数组 search的每个元素进行搜索匹配pattern 匹配元素返回到 foundmap expr list 对数组 list的每个元素进行expr运算 返回运算后的数组 元素用 替代 如map 1 1 2 2 3 二维数组 aoa 1 2 3 a b c 该数组的元素为两个数组子数组访问 aoa 0 1 2 3 子数组元素列表 aoa 0 0 1 2 子数组元素访问 aoa 0 0 a 1 2 3 b a b c aoa a

12、b aoa 0 0 关联数组 哈希 散列 关联数组的表示 h 1 a 2 b 关联数组的下标为关键字key 由key得到的值为value上式的意义是 h 1 a 2 b 元素形式 h 1 a 关联数组的赋值 a key1 1 key2 2 h a a h h1 h2 a h array h first second h1 h2 k v 函数的返回 h split keys a b c hash keys hash reverse keys 关联数组操作函数 keys hash values hash 分别返回键和值的列表 返回元素无顺序 key value each hash 效率高于先用fo

13、reach k keys h 再用 hash k exists hash key 判断关键字是否存在undef h 相当于删除散列 h delete 关联数组的顺序 foreach w sortkeys hash 按照字符串排序或者foreach w sort a b keys hash 数值排序 文件 存放于磁盘 用于读写访问 访问前必须先打开文件 结束时关闭文件open HANDLE die 成功返回非零 失败返回零HANDLE 文件句柄 用来代表操作的文件 以字母开头 字母 数字 下划线组成 一般用大写字母缺省打开的句柄STDIN STDOUT STDERR 文件描述符为0 1 2 不必

14、调用open就可以直接访问STDIN 键盘输入 控制台 STDOUT 屏幕 显示屏 STDERR 错误输出 显示屏 文件访问模式 只读 open F 文件不存在则创建新文件 存在则清空重写追加 open F 在存在的文件后面追加内容读写 open F 文件不存在则创建 存在则清空再写读写 文件不存在则创建 存在则追加管道 open F cat hello 把文件F的输出 printF a 作为 后的输入 open F comm 把comm的输出作为F的输入 以下的内容只要读出 comm为命令 文件缓冲 缓冲无缓冲打开 open sysopensysopen关闭close读 readlinesy

15、sread写printsyswrite定位tell seeksysseek 读文件 line 读一行到line 指针后移一行 缺省读到 中 n 为行分隔符 遇到它则为一行结束 行包含 可用chomp s 去除此标志 行尾不含 则不去除字符 可设置 为其他字符串 遇到 为行结束 chomp去除此字符串 array 文件内容全部读出 每行为一个元素 含回车 当从STDIN中读时 可省略为 read F in len offset 读入 insysread F in len offset getc F 读一个字符 命令行参数 ARGV 全局 ARGV 0 是第一个参数 不是程序名 是对 ARGV的引

16、用 ARGV一旦赋值 原值丢失 1 第一次看到 时 打开以 ARGV 0 中的文件 无参数则打开STDIN读 所以可以省略 2 shift ARGV 元素数量减少一个 3 读打开的文件中的所有行 4 再读第二个参数表示的文件 文件尾检测 eof和eof 文件结束返回真 ARGV file1 file2 while line if eof print eof 读取file1到末尾时 下一循环打开下一文件 每次读完一个文件输出eof if eof print eof 所有文件都读完才输出eof 写文件 printf formatstr a b 同c中的printf 格式化串包含 m nf的格式指示 后面依次是相应的值列表 printF str F文件句柄 后面为空格 省略F为STDOUT str输出内容 可用单引号 不进行变量替换 不加引号 计算出变量的值再输出 可省略 这是函数的特点 write用于格式化输出 不是read的相应操作 syswrite F data length offset 同sysread 文件测试 opexprif e file1 printSTDERR file1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号