Perl哈希表用法解析

 更新时间:2013年02月17日 14:48:04   作者:  
Perl语言有很多值得学习的地方,那么你对Perl哈希表的概念是否熟悉呢,这里和大家分享一下,希望本文的介绍能让你有所收获

本文和大家重点讨论一下Perl哈希表的概念,Perl语言和其他编程语言各有各的特点,这里和大家分享一下Perl哈希表的概念,其实Perl哈希表是一种结构。

Perl哈希表
Perl哈希表是一种结构。
key/value.
访问Perl哈希表元素
$Perl哈希表{$some_key}
当给Perl哈希表选择名字时,最好这样思考:Perl哈希表元素的名字和key之间可以用for来连接。如thefamily_nameforfredisflintstone.

要引用整个Perl哈希表,使用百分号(%)作为前缀。

复制代码 代码如下:

#!/bin/perl   
usewarnings;  
usestrict;  

my$person;  
my%family_name;   
$family_name{"fred"}="flintstone";  
$family_name{"barney"}="rubble";  

foreach$person(qw<barneyfred>){  
print"I'veheardof$person$family_name{$person}.\n";  
}  
my%some_hash=("foo",35,"bar",12.4,25,"hello","wilma",1.72e30,"betty","bye\n");  
my@array_array=%some_hash=;  
print"@array_array\n"; 

哈希赋值方法大箭头符号(=>)

复制代码 代码如下:

my%last_name=(  
"fred"=>"flintstion",  
"dino"=>undef,  
"barney"=>"rubble",  
"betty"=>"rubble",  
); 

keys函数会返回此Perl哈希表的所有keys,values含税将返回所有的values。如果Perl哈希表中没有元素,则此函数将返回空列表。

复制代码 代码如下:

my@k=keys%last_name;  
my@v=values%last_name;  
my$count=keys%last_name;#scalar-producing,key/valuepairs  

print"thekeyare@k.\n";  
print"thevalueare@v.\n";  
print"thecountare$count.\n"; 

each函数

如果想迭代得到Perl哈希表中的每个元素,一个通常的方法是使用each函数,它将返回key/value对的元素对。当对同一个Perl哈希表函数进行一次迭代时,将返回下一个key/value对,直到所有的元素均被访问。

复制代码 代码如下:

my$key;  
my$value;   
while(($key,$value)=each%last_name){   
#foreach(($key,$value)=each%last_name){  
print"$key=>$value.\n";  
}  

注意两种循环的结果,原因在于两种循环的设计机制不同。
复制代码 代码如下:

foreach$key(sortkeys%last_name){  
$value=$last_name{$key};  
print"$key=>$value.\n";  
print"$key=>$last_name{$key}.\n";  
}

相关文章

  • Perl时间处理函数用法介绍

    Perl时间处理函数用法介绍

    本文重点讨论Perl时间处理函数的概念,Perl能在绝大多数操作系统运行,可以方便地向不同操作系统迁移,并且Perl借取了C、sed、awk、shellscripting以及很多其他程序语言的特性
    2017-09-09
  • 求婚示爱的Perl代码之注释篇

    求婚示爱的Perl代码之注释篇

    Deparse 模块是一个很好的打印机,它可以揭开 Perl 代码神秘的面纱,帮助你理解优化器为你的代码做了那些转换。换言之,它会重新生成Perl代码,试着略去一些晦涩难懂的部分,把代码用一致的格式写出来
    2013-03-03
  • perl实现blog备份的脚本代码

    perl实现blog备份的脚本代码

    用perl实现的备份sql的代码,需要的朋友可以参考下
    2013-02-02
  • perl哈希hash的常见用法介绍

    perl哈希hash的常见用法介绍

    哈希在perl是非常重要且常用的,本文为大家介绍一些常见的用法,供大家学习参考
    2013-02-02
  • 为Java程序员准备的10分钟Perl教程

    为Java程序员准备的10分钟Perl教程

    这10分钟教程并不是Java和Perl的比较。目标是探索作为Java开发人员如何快速学习Perl。以下是一些从我的角度来看的关键笔记
    2013-11-11
  • Perl初学笔记之Hello World

    Perl初学笔记之Hello World

    这篇文章主要介绍了Perl初学笔记之Hello World,本文是自学Perl的一篇笔记,本文着重讲解了cpan的使用,需要的朋友可以参考下
    2015-06-06
  • perl与shell获取昨天、明天或多天前的日期的代码

    perl与shell获取昨天、明天或多天前的日期的代码

    这篇文章主要介绍了perl与shell获取昨天、明天或多天前的日期的代码,需要的朋友可以参考下
    2014-04-04
  • Perl List::Util模块使用实例

    Perl List::Util模块使用实例

    这篇文章主要介绍了Perl List::Util模块使用实例,本文给出扫描符合条件的某个列表并取出第一个符合条件的、求1到1000之间的和 、求一组数字的最大值与最小值等实用功能代码,需要的朋友可以参考下
    2015-06-06
  • Perl中常见符号与操作

    Perl中常见符号与操作

    这篇文章主要介绍了Perl中常见符号与操作,需要的朋友可以参考下
    2017-10-10
  • perl 模块打包加入外部依赖程序

    perl 模块打包加入外部依赖程序

    Perl 社区并不是所有的东西都发布在 CPAN 上。甚至专门有一个 Module::ThirdParty 模块记录这些非 CPAN 的 perl 项目列表。其中最有名的应该就属写博客的 Movable Type 和做监控的 SmokePing 了
    2013-02-02

最新评论