成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

解析Perl map函數使用

開發 架構
你對Perl map函數的用法你是否熟悉,Perl里面的Perl map函數是一種道具,可以讓你的函數或者表達式,很方便地施用到一系列對象上去。

本文和大家重點討論一下Perl map函數的使用,Perl map函數就是起了一個替代foreach循環的作用,Perl map函數會把數組LIST中的元素挨個取出,放到系統變量$_中,然后調用BLOCK去處理。

Perl map函數使用

Perl里面的Perl map函數是一種道具,可以讓你的函數或者表達式,很方便地施用到一系列對象上去。

◆Perl map函數的語法

Perl map函數BLOCKLIST
Perl map函數EXPR,LIST
BLOCK是一個用{}包圍的代碼塊。EXPR可以是子函數名、正則表達式等。LIST是輸入列表。

簡單地說,Perl map函數就是起了一個替代foreach循環的作用,Perl map函數會把數組LIST中的元素挨個取出,放到系統變量$_中,然后調用BLOCK去處理。值得強調的是,除非有很特殊的理由,不要去修改$_的值,因為修改$_就是直接改了原始數組里的元素!BLOCK處理過的結果由Perl map函數返回,仍然是一個數組。

◆一個例子:計算一系列文件大小

my@sizes=Perl map函數{-s$_}@filenames;
上面例子用-s操作取得一些文件的大小,存到數組中去。

◆是不是說Perl map函數的輸入數組和輸出數組一定等長呢?不一定的,看這個

my@books=('PrideandPrejudice','Emma','MasfieldPark','SenseandSensibility','NothangerAbbey','Persuasion','LadySusan','Sanditon','TheWatsons');

現在取出書名里面所有用到的單詞,并且全部轉換成大寫

my@words=Perl map函數{split(/\s+/,$_)}@books;
my@uppercases=Perl map函數uc,@words;
在split起過作用之后,當然@words的長度要比@books長了。

◆再舉一個Perl map函數嵌套使用的例子:矩陣的轉置

  1. useData::Dumper();  
  2. my@matrix=([a,b,c,d],[e,f,g,h],[i,j,k,l]);  
  3. printDumper(\@matrix);  
  4. my@transposed=Perl map函數{$x=$_;  
  5. [Perl map函數{$matrix[$_][$x]}0..$#matrix];  
  6. }0..$#{$matrix[0]};  
  7. printDumper(\@transposed);  

 上面的BLOCK里面,Perl map函數的返回值是用方括號操作符號構造匿名數組實現的。理解這一點就容易看懂代碼了,這個匿名數組法常常被用來構造簡單難懂的代碼,常用伎倆:-)

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/bocodb/archive/2008/11/19/3324025.aspx

【編輯推薦】

  1. Perl語法 解析Perl變量使用
  2. Perl基礎 Perl包概念詳解
  3. Perl引用中直接引用用法解析
  4. Perl語法中Perl標量和數組概念詳解
  5. 技術分享 解析Perl模塊創建和導入方法
責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-19 13:32:55

Perl用戶函數

2010-07-13 10:13:35

Perl內部函數

2010-07-19 13:49:17

Perl函數

2010-07-20 14:41:55

Perl語法

2010-07-19 14:20:57

Perl函數

2010-07-16 16:56:01

Perl構造函數

2010-07-19 14:13:41

Perl函數

2010-07-13 14:26:11

Perl數組

2010-07-26 14:06:43

Perl substr

2010-07-19 14:37:01

Perl進程啟動函數

2010-07-19 15:31:10

Perl關聯數組函數

2010-07-20 09:23:30

Perl構造函數

2010-07-16 17:04:38

Perl方法

2010-07-20 11:37:00

Perl函數返回值

2010-07-15 13:50:16

Perl目錄操作函數

2010-07-15 14:25:06

Perl時間函數

2010-07-21 14:18:27

Perl函數

2010-07-23 14:04:43

Perl grep函數

2010-07-19 10:01:57

Perl函數

2010-07-13 13:49:43

Perl foreac
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人福利在线观看 | 特a毛片 | 日韩高清国产一区在线 | 日本欧美在线观看视频 | 黄色大片在线播放 | 中文字幕人成乱码在线观看 | 日韩视频专区 | 日韩免费网站 | 中文字幕av第一页 | 久久久亚洲 | 91精品国产综合久久久久蜜臀 | 国产成人99久久亚洲综合精品 | 国产一区二区自拍 | 午夜精品在线 | 久久久av | 免费v片| 国产91成人| 激情一区二区三区 | 久久不卡 | 亚洲一二三在线 | 中文字幕日韩欧美一区二区三区 | 欧美三级电影在线播放 | 日本三级全黄三级三级三级口周 | 日韩精品国产精品 | 日韩免费福利视频 | 成年免费在线观看 | 日日摸夜夜添夜夜添精品视频 | 日韩在线视频免费观看 | 亚洲国产精品一区在线观看 | 超碰97免费| 国产欧美日韩综合精品一区二区 | 国产97在线视频 | 精品国产一区二区三区在线观看 | 国产亚洲精品久久久久动 | 91视频电影| 国产免费播放视频 | 成人在线观看免费视频 | 国产乱码久久久 | 亚洲一区二区三区四区五区午夜 | 国产在线播| 久久国产综合 |