jhdu的个人空间 https://blog.eetop.cn/1370874 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

perl 学习第五章 哈希(hash)

已有 1317 次阅读| 2016-1-12 09:20

什么是哈希
    哈希与数组的相同之处在于可以容纳很多值,并能随机存取,二区别在于数组以数字来检索,哈希以名字来检索。
访问哈希元素
    $hash{$some_key};  $family_name{"wilma"} = "flinatstone";
访问整个哈希
    要指代整个哈希,可以用百分号作为前缀%family_name
    @any_array = %some_hash;  #哈希松绑,会变成键值对的列表,但是顺序不一定。
哈希赋值
     %inverse_hash = reverse %any_hash; #这会导致键值互换,建立一个反转哈希.
胖箭头
    为了使键与值看起来更加清晰,在需要逗号的地方使用胖箭头来代替:
    my %last_name = (
                  "fred" => "flintstone",
                  "dino" => "rubble",  #整个列表需要以一个额外的逗号结尾,不过经过测试,发现不加也行。
)
哈希函数
keys 和 values 函数
    my %hash = ("a"=>1,"b"=>2,"c"=>3);
    my @k = keys %hash; #返回哈希的键列表;
    my @v = values %hash; #返回哈希的值列表;
    my $count = keys %hash; #有三对键值;
 each 函数
    each函数作用是罗列哈希的每个键值,一般用在while 循环中:
    while(($keys,$values) = each %hash){
        print "$key => $values\n";
    }
exists函数
    if(exists $books{"dino"}){
        print ".....";  #检查哈希中是否由某个键;
}
delete 函数
    my $person = "betty";
    delete $books{$person};  # 删除指定的键及其相应的值;
%ENV哈希
    print "CHARACTER is  $ENV{CHARACTER}\n"; # 只要在环境外设定了任何变量,都可以在perl中获取。

点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 3

    粉丝
  • 1

    好友
  • 0

    获赞
  • 1

    评论
  • 1083

    访问数

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-5 08:16 , Processed in 0.012993 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部