perl哈希的一个实例分析

所属分类: 脚本专栏 / perl 阅读数: 405
收藏 0 赞 0 分享

复制代码 代码如下:

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

更多精彩内容其他人还在看

分享下perl胶水实现前后台对接的方法

Perl胶水实现前后台对接的方法,有需要的朋友可以参考下
收藏 0 赞 0 分享

Perl localtime时间函数的应用介绍

Perl时间函数localtime的使用介绍,这里简单的介绍下,更多请查看官方介绍
收藏 0 赞 0 分享

让apache2以cgi方式运行perl cgi程序的实现方法

让apache2以cgi方式运行perl cgi程序的方法,供大家学习参考
收藏 0 赞 0 分享

perl处理xml的模块介绍

perl处理xml的模块介绍,需要的朋友可以参考下
收藏 0 赞 0 分享

Perl从文件中读取字符串的两种实现方法

有时候我们需要从文件中读取字符串,这里简单介绍下, 需要的朋友可以参考下
收藏 0 赞 0 分享

perl 标量和运算符的一些知识介绍

有关perl的标量和运算符的一些知识,有需要的朋友可以看看
收藏 0 赞 0 分享

perl控制流介绍(if条件,while,for循环,foreach)

Perl控制流(if条件,while,for循环),需要的朋友可以参考下
收藏 0 赞 0 分享

Perl文件读取的经典用法分享

Perl文件读取的经典用法,有需要的朋友可以参考下
收藏 0 赞 0 分享

perl大文件读取处理的模块介绍

perl CPAN中有一个Tie-File 模块极大方便了对大文件的操作
收藏 0 赞 0 分享

perl跳过首行读取文件的实现代码

要求直接跳过第一行,然后读取后面的内容,以下代码来自网络,感谢原作者的辛苦劳动,顺祝新年快乐
收藏 0 赞 0 分享
查看更多