码迷,mamicode.com
首页 > 其他好文 > 详细

perl学习(2)hashes

时间:2018-03-18 15:00:21      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:地址   次数   body   key   调用   pos   指定   ima   val   

一:  哈希概念

    是一种数据结构,可容纳很多值,并能随机存取;由关键字与索引值构成<key,value>;

    key值是唯一的

二:  应用场景:

    根据主机名找对应的IP地址,

    根据IP地址找主机名,

    按单词统计出现的次数,

    按驾照号码找出对应的姓名

    ....................

三:  哈希的声明与赋值

1:  声明%

    eg:my %tab;

2:  赋值

    A:使用列表对哈希进行赋值,但必须有偶数个成员(键/值对)。例如

    技术分享图片

    B:可用箭头符号=>将哈希赋值中的键/值区分开来

    技术分享图片

3:  hash可转换成列表

    eg:my @arrays = %tab;

4:  hash复制

    eg:my %new_hash=%hash;

      my %inverse_hash=reverse %hash(哈希值value唯一的情况才有效)

5:  访问哈希元素

    A:访问hash中的单个元素,使用花括号

      eg:my $value = $scores{$key};

      my $value2 = $scores {"xiaoming"};

    B:可以将单个的哈希元素内插到双引号字符串中

      eg:print “xiaoli‘s score is $scores{"xiaoli"}\n”;

    C:%ENV 获取系统环境的配置信息(path)

      eg:技术分享图片

 

6:   例子

    技术分享图片输出:技术分享图片  

    use Data::Dumper;

    print Data::Dumper->Dumper([\%scores1],[‘scores1‘]);  #调用类Data::Dumper

三:  哈希操作

1:  keys

    返回关键字列表;my @name = keys %scores;

2:  values

    返回值列表;my @scores = values%scores;

3:  each

    返回一对值;my($name,$score) = each %scores

 4:  exists

    检查hash中是否存在指定的关键字,存在返回1;my $person = "xiaoming"; exists $scores{$person};

5:  delete

    删除hash中指定的键与对应的值;delete $scores{$person};

6:   例子

     技术分享图片技术分享图片

    输出:技术分享图片

 

    

 

 

 

 

 

    

 

    

 

perl学习(2)hashes

标签:地址   次数   body   key   调用   pos   指定   ima   val   

原文地址:https://www.cnblogs.com/xh13dream/p/8595243.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!