Perl 语言语法学习

Posted 牛学汇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Perl 语言语法学习相关的知识,希望对你有一定的参考价值。

Perl 条件语句


Perl 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

可以通过下图来简单了解条件语句的执行过程:

注意,数字 0, 字符串 '0' 、 "" , 空 list () , 和 undef 为 false ,其他值均为 true。 true 前面使用 ! 或 not则返回 false 。

Perl 语言语法学习

今天先来介绍下Perl if 语句

它由一个布尔表达式后跟一个或多个语句组成。语法格式如下

if(boolean_expression){
  # 在布尔表达式 boolean_expression 为 true 执行}

如果布尔表达式 boolean_expression为 true,则 if 语句内的代码块将被执行。如果布尔表达式为 false,则 if 语句结束后的第一组代码(闭括号后)将被执行。

Perl 语言语法学习

例子:

#!/usr/bin/perl

$a = 10;

# 使用 if 语句判断布尔表达式

if( $a < 20 ){

# 布尔表达式为true时执行   

 printf "a 小于 20 ";

}

print "a 的值为 : $a ";

$a = "";

# 使用 if 语句判断布尔表达式

if( $a ){

# i布尔表达式为true时执行

printf "变量 a 为 true ";

}

print "a 的值为 : $a ";

执行以上程序,输出结果为:

a 小于 20

a 的值为 : 10

a 的值为 :

实战分享:

基本的语法需要慢慢渗透,实战演练才能学以致用。

     昨天老板说,牛二,学了这么久的perl语言了,你去美国国立生物技术信息中心下载点东西吧。于是我在NCBI网站上搜索了一番,发现我要下载的转录组数据有上百个项目。这么多的内容,别说下载需要时间,整理这些注释信息也很费事。所以牛二想通过Perl语言来完成。

牛二从NCBI主页GEO词条中搜索关键词sheep,下面弹出的N多条目,包括项目名称,物种,类别等简要信息。全选复制粘贴到txt文档中,命名为data_list.txt 。

Perl 语言语法学习

Perl 语言语法学习

通过观察每一个条目的网址发现,只有后面的GSE编号不同,如下。

https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE112500

https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE107064

......

而该GSE及其编号正好存在于我们之前生成的data_list.txt文件中。所以牛二写了如下代码:

#! /usr/bin/perl -w

use warnings;

use strict;

open(IN,"data_list.txt") || die "can't open the file: $!";

open(OUT,">GSE_id") || die "can't open the file: $!";

while(<IN>){

chomp;

if(/ASeriesAccession: (GSEd+)ID: /){

print OUT 'https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=',$1," ";

}

以上代码中运用了if条件句,如果符合后面的正则表达式,那么就会将匹配的结果打印出来。它实现了NCBI搜索结果中各个条目对应网址的抓取。你可能会说,也不是很好使吗,要想获得网址,我直接从网页上查找复制粘贴多省事。这可能就是计算机语言的魅力,进入大数据时代,如果你搜到相关的条目有上千条呢,要想获得每个条目对应的网址,我看粘贴复制来完成的话,还是先拷贝几个自己出来吧,说不定也能事半功倍。

今天就分享这么多。

see you .

Perl 语言语法学习


点击阅读原文,了解更多丰富内容


以上是关于Perl 语言语法学习的主要内容,如果未能解决你的问题,请参考以下文章

Perl学习总结

Dart语言语法学习笔记

Perl 基础语法

perl编程笔记--基础介绍及基础语法

3-Perl 基础语法

PHP