加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl 学习笔记 --- 16

发布时间:2020-12-16 00:27:57 所属栏目:大数据 来源:网络整理
导读:? 第16章:一些高级的技术 ? ? 16.1 利用eval捕获错误 ? 防止某程序块,促使程序崩溃。 ? 其形式如下: ? eval{expression}; ? ? ? 16.2 使用grep在列表得到元素 ? 其形式如下: @ArrayName = grep{expression} 0..n ? 例如: ? my @odd_numbers = grep {$_%

?

第16章:一些高级的技术

?

?

16.1 利用eval捕获错误

?

防止某程序块,促使程序崩溃。

?

其形式如下:

?

eval{expression};

?

?

?

16.2 使用grep在列表得到元素

?

其形式如下:

@ArrayName = grep{expression} 0..n

?

例如:

?

my @odd_numbers = grep {$_%2} 1..1000

?

相当于:

my @odd_numbers;

?

foreach(1..1000) {

?????? push@odd_numbers,$_,if $_ % 2;

}

?

?

?

?

16.3 使用map对列表项进行交换

?

其形式如下:

@ArrayName = map{expression}@arrayName

?

例如:

my @data = (4.75,1.5,2,1234,6.9456,12345678.9,29.95);

my @formatte_data = map{&big_money($_)} @data;

?

?

等同于:

my @data = (4.75,29.95);

my @formatted_data;

?

foreach (@data) {

?????? push@formatte_data,@big_money($_);

}

?

sub big_money {

?????? my$number = sprintf “%.2f”,shift @_;

?????? 1while $number =~ s/^(-?d)(ddd)/$1,$2/;

?????? $number=~ s/^(-?)/$1$/;

?????? $number;

}

?

?

?

16.4 不用双引号的hash keys

?

不建议使用。

?

?

?

16.5 Slices

?

?

16.5.1 Array Slice

?

对一个列表做索引。

?

例如:

my ($card_num,$count) = (split /:/)[1,3,5];

?

上述索引值将元素1、3和元素5从列表中取出,将他们按照3个元素的列表值返回。

?

-----------------------------------------------------------------------------------------------

全书,完毕!

本人已把此学习笔记上传“我的资源”(CSDN)上,有需要可以下载学习!

????????????????????????????????? -----------xiaobin--- 2012.2.26

?------------------------------------------------------------------完美的分割线----------

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读