• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >perl > Perl 哈希Hash用法之入门教程

Perl 哈希Hash用法之入门教程

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了perl 哈希,perl 哈希排序,perl 哈希数组,perl 哈希赋值,perl 哈希嵌套等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

一、什么是Perl Hash

哈希是一种数据结构,和数组类似,可以将值存放到其中,或者从中取回值。但是,和数组不同的是,其索引不是数字,而是名字。也就是说,索引(这里,我们将它叫key)不是数字而是任意的唯一的字符串。

key可以是任意的字符串,你可以使用任何的字符串作为key,但它们是唯一的。
另一种思考hash 的方法是,把它看作一堆数据(a barrel of data),每一个数据都有一个相应的标签。可以通过标签访问此标签对应的元素。但其中是没有“第一个”元素的概念的。在数组中,数组元素从0,Perl学习之哈希hash_马亮的计算机技术1,2 开始编号。但在hash中,没有确定的顺序,因此也没有第一个元素。只是一些key/value 对的集合。

keys和values均为任意的标量,但keys通常转换为字符串。因此,如果将表达式50/20 作为keys,则其通常被转换为3字符的字符串“2.5”。
由于Perl的“没有不必要的限制”的设计哲学:hash可以是任意大小,从空hash(没有key/value对),到任何你内存允许的大小。
keys是唯一的,但values可以重复。hash的value可以是数字,字符串,undef,或者它们的混合,但key是唯一的。

为什么使用Perl Hash

可以把hash看作一个简单的数据库,其中每一个key下面可以有一块数据。如果你的任务是关于:“查询重复的”,“唯一的”,“交叉引用的”,“查询表”,则hash很可能在这类应用中帮上Perl学习之哈希hash_马亮的计算机技术你的忙。

二、Perl Hash元素的存取

要访问hash 元素,可以使用下面的语法:$hash{$some_key}
这和访问数组元素的方法有些类似,这里下标(key)上使用的是花括号({}),而不是方括号([ ])。现在key 的表达式是字符串,而非数字。
hash的名字和Perl中其它的标识符的命名规则是一样的(字母,数字,下划线组成,但不能由数字开头)。
访问不存在的hash元素将得到undef。

1.作为整体的Perl Hash

要引用整个hash,使用百分号(%)作为前缀。
为了方便,hash可以转换为列表,或者反过来。

2.Perl Hash赋值

可以使用如下的语法在hash 之间拷贝:
%new_hash = %old_hash;
将hash转变成其它形式更加常见。例如,我们可以将hash反转:
%inverse_hash = reverse %any_hash;

3.大箭头符号(=>)

当给hash赋值时,有时并不明显哪些元素是keys,那些是values,因此发明了大箭头符号(=>)。在需要逗号的时候,都可以使用大箭头符号替换。
如:

三、Perl Hash函数

某些有用的函数可以对整个hash 进行操作。

1.keys和values函数

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

2.each函数

如果想迭代hash的每一个元素,一种通常的方法是使用each函数,它将返回key/value对应的2个元素列表。
当对同一个hash 函数进行一次迭代时,将返回下一个key/value对,直到所有的元素均被访问。如果没有更多的key/value对,则each函数将返回空表。

当然,each返回的key/vlaue对,顺序是混乱的(它其顺序和keys和values函数返回的顺序相同)。如果想将其按序排放,可以对它们排序(使用sort)。

四、Perl Hash的通常用法

1.exists函数

要查看hash中是否存在某个key,可以使用exists函数,如果hash中存在此key,则返回true,与是否有对应的value无关。

2.delete 函数

delete函数将某个给定的key(包括其对应的value)从hash中删除。如果不存在这个key,则什么也不做,不会有警告或者错误信息。

3.Perl Hash 元素的内插

你可以在双引号的字符串中使用单个hash元素,但不支持整个hash 的内插。

</div>

您可能想查找下面的文章:

  • Perl与JS的对比分析(数组、哈希)
  • Perl实现高水线算法(解决多值比较问题方法)
  • Perl 哈希的创建和引用介绍
  • Perl哈希表用法解析
  • perl哈希的一个实例分析
  • Perl 哈希Hash用法之入门教程
  • perl哈希hash的常见用法介绍

相关文章

  • perl 文件操作总结
  • perl对长度不一文本的行列进行置换的实现代码
  • 有关perl的内置特殊变量介绍
  • perl的INC设置分析
  • Perl 函数集小结
  • Shell编程的一些知识集合
  • perl 子程序 sub
  • perl数据库添加、删除、更新、查询操作例子
  • perl引用的相关知识分享
  • perl命令行参数内建数组@ARGV浅析

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • perl高级排序,&lt;=&gt;操作符,飞船操作符
    • perl处理xml的模块介绍
    • 用python下载百度文库的代码
    • Perl List::Util模块使用实例
    • perl实现blog备份的脚本代码
    • FTP自动上传文件的perl脚本以及配置文件
    • Perl模块编写说明
    • Perl 哈希Hash用法之入门教程
    • perl文件操作的一些例子分享
    • Perl Mysql数据库操作实现代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有