perl哈希的一个实例分析

 更新时间:2020年6月29日 13:42  点击:1527

复制代码 代码如下:

#!/bin/perl
use strict; 
use warnings; 

my %movies; 
my $film; 
my %reverse_result; 
my $director; 
my @data; 

%movies = 

  'The Shining'       => 'Kubrick', 
  'Ten Commandments'  => 'DeMille', 
  'Goonies'           => 'Spielberg', 
); 

#输出哈希的值,输出的结果为Kubrick 
print $movies{'The Shining'}; 

#同时输出键和值 
foreach $film(keys %movies) 

   print "$film was directed by $movies{$film}.\n"; 


#添加空格 
print "\n"; 

#哈希结构的切换 
%reverse_result=reverse %movies; 
foreach $director(keys %reverse_result) 

   print "$director directe the $reverse_result{$director}.\n";  
}

#添加空格 
print "\n";

#当哈希结构用于列表环境中时,perl会将hash重新变为由关键词和键值组成的普通列表 
@data=%movies; 
 print "@data\n"; 

#添加空格 
print"\n"; 

#得到的数组是一个分为奇数为film,偶数为director的数组,或者相反 
#然后我们将数组赋值给hash 
%movies=@data; 
foreach $director(keys %reverse_result) 

  print "$director directe the $reverse_result{$director}.\n";  
}     
print "The result is not change\n";

以下为输出结果:
    F:\>perl\a.pl 
    KubrickGoonies was directed by Spielberg. 
    The Shining was directed by Kubrick. 
    Ten Commandments was directed by DeMille. 

    DeMille directe the Ten Commandments. 
    Spielberg directe the Goonies. 
    Kubrick directe the The Shining. 

    Goonies Spielberg The Shining Kubrick Ten Commandments DeMille 

    DeMille directe the Ten Commandments. 
    Spielberg directe the Goonies. 
    Kubrick directe the The Shining. 

    F:\>

#----测试哈希key的方法:
if(exists $hash{keyval}) 


#----删除关键字:
delete hash {keyval};

#---清空哈希:
%hash=();

[!--infotagslink--]

相关文章

  • Perl与JS的对比分析(数组、哈希)

    下面小编就为大家带来一篇Perl与JS的对比分析(数组、哈希)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-29
  • C++获取文件哈希值(hash)和获取torrent(bt种子)磁力链接哈希值

    这二个代码一个是获取文件哈希值的,另外一个是获取torrent文件磁力链接的哈希值...2020-04-25
  • PHP5中哈希创建和验证方法详解

    如果你使用php5.5版本的话我们对于哈希创建和验证方法就简单多了, PHP 5.5为我们提供了4个函数:password_get_info(), password_hash(), password_needs_rehash(),和pas...2016-11-25
  • Go语言常见哈希函数的使用

    哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。具体的介绍网上有很详细的描述,如闲聊哈希表 ,这里就不再累述了;...2020-05-07
  • Redis中哈希分布不均匀的解决办法

    这篇文章主要介绍了Redis中哈希分布不均匀的解决办法的相关资料,需要的朋友可以参考下...2021-02-15
  • C#计算字符串哈希值(MD5、SHA)的方法小结

    这篇文章主要介绍了C#计算字符串哈希值(MD5、SHA)的方法,以实例形式较为详细的分析总结了C#计算字符串哈希值的各种常用技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • C语言实现散列表(哈希Hash表)实例详解

    这篇文章主要介绍了C语言实现散列表(哈希Hash表)实例详解的相关资料,需要的朋友可以参考下...2020-04-25
  • C#实现给定字符串生成MD5哈希的方法

    这篇文章主要介绍了C#实现给定字符串生成MD5哈希的方法,涉及C#操作字符串的相关技巧,需要的朋友可以参考下...2020-06-25
  • Perl 哈希Hash用法之入门教程

    本文和大家重点讨论一下Perl Hash的用法,哈希是一种数据结构,和数组类似,但是,和数组不同的是,其索引不是数字,而是名字。也就是说,索引(这里,我们将它叫key)不是数字而是任意的唯一的字符串...2020-06-29
  • Perl 哈希的创建和引用介绍

    创建,引用仅有两种方法,使用它也是两种,这里简单介绍下, 方便需要的朋友...2020-06-29
  • perl哈希的一个实例分析

    上一篇文章介绍了hash的入门教程,这篇文章为大家提供一个实例,方便大家深入学习...2020-06-29
  • C++哈希应用的位图和布隆过滤器

    这篇文章主要介绍了C++哈希应用的位图和布隆过滤器的相关资料,文章内容多以列举试题的方式讲解,感兴趣的朋友可以参考下面文章内容...2021-09-06
  • C#获取哈希加密生成随机安全码的类实例

    这篇文章主要介绍了C#获取哈希加密生成随机安全码的类,涉及C#哈希加密及字符串操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • 将一个二维数组转换为 hashmap 哈希表

    /** * 将一个二维数组转换为 hashmap * * 如果省略 $val 参数,则转换结果每一项为包含该项所有数据的数组。 * * @param array $arr * @param string $keyF...2016-11-25
  • perl哈希hash的常见用法介绍

    哈希在perl是非常重要且常用的,本文为大家介绍一些常见的用法,供大家学习参考...2020-06-29
  • 为什么哈希存取比较快?使用它需要付出什么代价

    本文主要介绍为什么哈希存取比较快的原理,有需要的朋友可以参考一下。...2020-06-25
  • 什么是哈希hash 算法

    哈希(Hash)表 一般的查找方法基于比较的,查找效率依赖比较次数,其实理想的查找希望不经比较,一次存取便能得到所查 记录,那就必须在记录的存储位置和它的关键字...2016-11-25