- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第二章列表和数组;列表是标量值的有序集,数组是用于存放列表的变量。每一个列表元素对应相应的数组元素,数组可以利用其索引查看每个元素的标量值。;列表的形式;qw(quotedword)简写;列表操作;当左边列表中的变量数目右边列表中的值数目,那么右边列表中多余的值将被抛弃
($first_name,$last_name)=qw(JackTomBrian);?
返回的结果为:
$first_name=Jack,$last_name=Tom
当左边列表中的变量数目右边列表中的值数目,那么左边列表中剩余的变量将被赋予undef值
($first_name,$middle_name,$last_name)=qw(LarryWall);?
返回的结果为:
$first_name=Larry,$middle_name=Wall,$last_name=undef;互换两个变量的值
#!/usr/bin/perl
usestrict;
usewarnings;
my$first_name=Brian;
my$last_name=Ruan;
printCHANGE-before:\$first_name=$first_name\n;
printCHANGE-before:\$last_name=$last_name\n;
($first_name,$last_name)=($last_name,$first_name);
printCHANGE-after:\$first_name=$first_name\n;
printCHANGE-after:\$last_name=$last_name\n;
问题:与C语言的差别在哪?;数组形式;练习:定义核酸数组;定义核酸数组;#!/usr/bin/perl
usewarnings;
$number=2.71828;
@food;
for($i=0;$i5;$i++){
$food[$i]=$i;
}
print$food[$number+1]\n”
说明:任何求值能得到数字的表达式都可以用作下标;数组赋值方式;@rocks=qw(bedrock$namelava);
#返回的结果为:rocks[0]=bedrock,rocks[1]=$name(注意:不是变量$name的值),rocks[2]=lava“
@city=();@rocks=(bedrock,@city,lava);?
#数组rocks的元素为:bedrock,lava,空列表被去除(隐示声名undef)
@city=(undef);@rocks=(bedrock,@city,lava);?
#数组rocks的元素为:bedrock,undef,lava“
@rocks=(bedrock,undef,lava);
#数组rocks的元素为:bedrock,undef,lava(显示声明undef);数组内插于字符串;特殊的数组索引;数组元素读取;数组切片;pop和push函数;shift和unshift函数;示例;reverse和sort函数;join和split函数;示例;splice函数;几种特殊情况;第二种情况:当@new为空则为删除
例如:splice(@a,2,3),它表示跳过数组@a的前2个元素,然后将剩下数组元素中的前3个元素删除,如果此时还有剩下数组元素,则不进行删除
第三种情况:当length和@new同时省略时
例如:splice(@a,3),它表示跳过数组@a的前3个元素,然后将剩余的所有元素删除;示例;foreach控制结构;默认变量$_;标量和列表上下文;列表上下文中的STDIN;示例;读取蛋白质序列;计算核酸序列中碱基个数;二维数组;数组引用;打印二维数组;#!/usr/bin/perl
@a=([3,4,10],
[2,7,12],
[0,3,4],
[6,5,qqq],
);
foreach$onedimen(@a){
print@$onedimen\n;
}
print\n;
foreach$i(0..$#a){
$b=$a[$i];
print$b\n;
$n=$#{$b};
print$n\n;
foreach$j(0..$n){
printele$i$jis$a[$i][$j]\n;
}
};添加一行新数组;#!/usr/bin/perl
@a=([3,4,
文档评论(0)