打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Perl:Hash数据结构
1.什么是哈希
哈希是perl的一种数据类型,比较类似数组,用于存放数据,包括2部分关键字keys和值value。不同于数组,哈希访问元素的是按照名字访问标量的key=>value.
hash 用% 来标示
2.hash 操作
a.增加
my %hash; //定义
第一种写法:$hash{'author'}="Young";  #author 是关键字,Young 是value     与数组一样,hash作为整体时候是这样%hash 带标示符%,作为单个元素使用要使用$而不是%
第二种写法: my %food=('fruit',"apple",'drink',"Coco");         #类似数组初始化 注意这里使用的是( )不是{}  {},用了它实际就是创建了一个引用,正确的就是(),圆括号否则会报 Reference found where even-sized list expected at hash.pl line 4.
第三种写法:my %fruit=(apple=>"fruit",banana=>'fruit');    #     =>是perl运算符,用于hash
b.使用hash值
单个使用:$hash{'author'};         #       $哈希名{$keyword}
全部使用:foreach $key (keys %food)
{
print  print "$key=>$food{$key}\n";     #使用keys %food 遍历%food的每一个关键字
}
获取所有的key:my  @key=keys %fruit;
获取所有的value:  my @value=values  %fruit;
3.hash 函数 exists 和delete
判断 某个关键字是否存在 exists $hash{'auther'}
删除某个关键字 delete %hash{$keyword}
删除整个hash %hash=();
实例
#!/usr/bin/perl -w
my %hash;
$hash{'author'}="Young";
my %food=('fruit',"apple",'drink',"Coco");
my %fruit=(apple=>"fruit",banana=>'fruit');
print "$hash{'author'}\n";
foreach $key (keys %food)
{
print "$key=>$food{$key}\n";
}
my  @key=keys %fruit;
my @value=values %fruit;
print @key;
print @value;
print "\n";
print "auther is exists\n" if(exists $hash{'auther'});
delete $food{'drink'};
print "after delete some keyword print \%food\n";
while((my $key,my $value)=each%food)
{
print "$key=>$value\n";
}
结果:
/home/Young> perl hash.pl
Young
fruit=>apple
drink=>Coco
bananaapplefruitfruit
after delete some keyword print %food
fruit=>apple
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
脚本语言介绍——perl(2)
PHP array_walk() 函数详解
[转]perl的hash排序
Perl入门(八)Perl的复杂数据结构
Perl grep函数用法详解
Perl实现序列化(Serialize)和反序列化(Unserialize)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服