a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Perl > 正文

Perl 哈希Hash用法之入門教程

2020-06-04 20:30:24
字體:
來源:轉載
供稿:網友

一、什么是Perl Hash

哈希是一種數據結構,和數組類似,可以將值存放到其中,或者從中取回值。但是,和數組不同的是,其索引不是數字,而是名字。也就是說,索引(這里,我們將它叫key)不是數字而是任意的唯一的字符串。

key可以是任意的字符串,你可以使用任何的字符串作為key,但它們是唯一的。
另一種思考hash 的方法是,把它看作一堆數據(a barrel of data),每一個數據都有一個相應的標簽。可以通過標簽訪問此標簽對應的元素。但其中是沒有“第一個”元素的概念的。在數組中,數組元素從0,Perl學習之哈希hash_馬亮的計算機技術1,2 開始編號。但在hash中,沒有確定的順序,因此也沒有第一個元素。只是一些key/value 對的集合。

keys和values均為任意的標量,但keys通常轉換為字符串。因此,如果將表達式50/20 作為keys,則其通常被轉換為3字符的字符串“2.5”。
由于Perl的“沒有不必要的限制”的設計哲學:hash可以是任意大小,從空hash(沒有key/value對),到任何你內存允許的大小。
keys是唯一的,但values可以重復。hash的value可以是數字,字符串,undef,或者它們的混合,但key是唯一的。

為什么使用Perl Hash

可以把hash看作一個簡單的數據庫,其中每一個key下面可以有一塊數據。如果你的任務是關于:“查詢重復的”,“唯一的”,“交叉引用的”,“查詢表”,則hash很可能在這類應用中幫上Perl學習之哈希hash_馬亮的計算機技術你的忙。

二、Perl Hash元素的存取

要訪問hash 元素,可以使用下面的語法:$hash{$some_key}
這和訪問數組元素的方法有些類似,這里下標(key)上使用的是花括號({}),而不是方括號([ ])。現在key 的表達式是字符串,而非數字。
hash的名字和Perl中其它的標識符的命名規則是一樣的(字母,數字,下劃線組成,但不能由數字開頭)。
訪問不存在的hash元素將得到undef。

1.作為整體的Perl Hash

要引用整個hash,使用百分號(%)作為前綴。
為了方便,hash可以轉換為列表,或者反過來。

2.Perl Hash賦值

可以使用如下的語法在hash 之間拷貝:
%new_hash = %old_hash;
將hash轉變成其它形式更加常見。例如,我們可以將hash反轉:
%inverse_hash = reverse %any_hash;

3.大箭頭符號(=>)

當給hash賦值時,有時并不明顯哪些元素是keys,那些是values,因此發明了大箭頭符號(=>)。在需要逗號的時候,都可以使用大箭頭符號替換。
如:

代碼如下:
my %last_name = (  
"www" => 1,  
"eee" => 2,  
); 

三、Perl Hash函數

某些有用的函數可以對整個hash 進行操作。

1.keys和values函數

keys函數會返回此hash的所有keys,values函數將返回所有的values。如果hash中沒有元素,則此函數將返回空列表。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲人成人一区二区在线观看 | 国产激情精品视频 | 一区二区三区 | av大片| 99亚洲 | 可以免费看黄视频的网站 | 日韩av一区二区在线观看 | 国产精品国产自产拍高清av | 欧美区亚洲区 | 午夜a毛片| 黑人精品| www.99久| 成人影院一区二区三区 | 成人国产在线观看 | 一级毛片观看 | 欧美日韩色图 | 欧美精品一区二区三区在线播放 | 国产在线拍| 国产精品色婷婷久久58 | 久草久草久草 | 激情视频一区二区三区 | 婷婷在线观看视频 | 精品久久久久久国产 | 黄色影片网址 | 久久亚洲国产 | 在线免费观看黄色 | 理论黄色片 | 国产欧美在线视频 | 国产精品美女一区二区三区 | 亚洲精品一区久久久久久 | 日韩欧美三区 | 国产人体视频 | 亚洲香蕉在线观看 | 最新国产在线 | 手机在线观看av | 国产三级自拍 | 免费的日本网站 | 成人黄色一级网站 | 成人宗合网 | 国产精品久久久久久影院8一贰佰 | 久久精品国产清自在天天线 |