perl哈希的一个实例分析_perl

复制代码 代码如下:

#!/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=();

时间: 2024-09-20 07:36:09

perl哈希的一个实例分析_perl的相关文章

js实现HashTable(哈希表)的实例分析_javascript技巧

一.javascript哈希表简介 javascript里面是没有哈希表的,一直在java,C#中有时候用到了这一种数据结构,javascript里面若没有,感觉非常不顺手.细细看来,其实javascript的object的属性其实与哈希表非常类似. 如: var person = {}; person["name"] = "关羽"; 我们只需要在其基础上再封装一些HashTable的函数,就能够得到一个精简版的哈希表. 加入函数如下: 函数名 说明 返回值 add

perl pop push shift unshift实例介绍_perl

学习记录一下 复制代码 代码如下: #!/usr/bin/perl -w use strict; print '@a @b @c @d 的值都为1 2 3',"\n"; my @a = (1..3); pop(@a); print "\@a的值为@a,pop拿掉数组最右边的值\n"; my @b = (1..3); push(@b,'4'); print "\@b的值为@b,push添加一个值到数组的最右边.\n"; my @c = (1..3)

实例分析影响百度排名的关键因素是网站权重

很多时候,我们对影响百度排名的因素都还处于一个非常模糊状态,网上很多的文章,对于这个问题也没有说到关键点上,那么今天,姚金刚就对影响百度排名的关 键因素是网站权重这个话题与大家进行一个实例分析. 首先,我们在百度搜索"拳皇97下载",可以发现,在百度首页的全是网站的相关内页, 而这些内容却不得了,PR值最高的达到了5,目前排名第一,最低的PR值也是1(除百度知道以外).虽然谷歌离开了中国,但是谷歌的PR算法本身就综合了 各方面的参数,所以PR在很大程度上来说,也象征着一个网站或者一个网

Perl 哈希的创建和引用介绍_perl

语法 创建'引用'仅有两种方法,使用它也是两种. 创建引用 创建规则 1 如果你在一个变量前加一个'/'号,你就得到了这个变量的'引用'.     $aref = /@array;         # $aref 保存着指向@array的'引用'     $href = /%hash;          # $href 保存着指向%hash的'引用' 当你把'引用'保存在类似 $aref 或 $href的变量中,你就可以象操作其他标量一样copy或保存它.     $xy = $aref;   

php定义一个参数带有默认值的函数实例分析

 这篇文章主要介绍了php定义一个参数带有默认值的函数,实例分析了php参数带有默认值的函数使用技巧,需要的朋友可以参考下     本文实例分析了php定义一个参数带有默认值的函数用法.分享给大家供大家参考.具体分析如下: php的函数参数可以指定默认值,指定默认值后,调用时如果不给该参数赋值,则该参数就使用默认值 ? 1 2 3 4 5 6 7 8 9 10 11 <?php function capitalize( $str, $each=TRUE ) { $str = strtolower

Perl中使用File::Lockfile确保脚本单实例运行_perl

用Perl写了一些监控脚本,放在crontab中调度执行.有时候会发现一个脚本运行时间过长,会同时跑起多个实例,因此有必要为脚本加上控制,只运行一个实例. 最简单自然的想法,在脚本中检查并创建一个空的lock文件,脚本结束时再删除.通过判断文件是否存在的方式来判断脚本是否已经运行.不过这样做有个bug,如果脚本运行过程中异常终止,lock文件没有正常删除,就会导致脚本无法再运行. 空的lock文件不行,那么考虑在lock文件中加入一点内容,比如进程的PID号,然后通过检查该PID号的进程是否还在

php定义一个参数带有默认值的函数实例分析_php技巧

本文实例分析了php定义一个参数带有默认值的函数用法.分享给大家供大家参考.具体分析如下: php的函数参数可以指定默认值,指定默认值后,调用时如果不给该参数赋值,则该参数就使用默认值 <?php function capitalize( $str, $each=TRUE ) { $str = strtolower($str); if ($each === TRUE) { $str = ucwords ($str); } else { $str = strtoupper($str); } ech

Perl哈希表用法解析_perl

本文和大家重点讨论一下Perl哈希表的概念,Perl语言和其他编程语言各有各的特点,这里和大家分享一下Perl哈希表的概念,其实Perl哈希表是一种结构. Perl哈希表Perl哈希表是一种结构.key/value.访问Perl哈希表元素$Perl哈希表{$some_key}当给Perl哈希表选择名字时,最好这样思考:Perl哈希表元素的名字和key之间可以用for来连接.如thefamily_nameforfredisflintstone. 要引用整个Perl哈希表,使用百分号(%)作为前缀.

实例分析 百度K站到恢复全过程记录

我写这篇文章主要是为了给大家一个实例,从网站被K,到恢复的全过程.也算是给我自己一个总结和教训吧. 8月22号,公司网站是出现收录跌至400,首页被K,这个显然是被降权了. 8月23号,灾难的一天,全部页面被K的一个不剩. 进过分析得出几个可能导致被K站的原因. 1.文章问题 因为采集的时候没设置好,导致采集了很多重复标题.没有内容.分页没内容的文章.公司网站也有2年时间了,不算是新站了,而且有固定流量,原创文章也有点,但是很少.因为我过度追求百度的收录,大量采集,可能是导致这次被K的主要原因(