位置: 编程技术 - 正文

Perl 哈希Hash用法之入门教程(perl的哈希)

编辑:rootadmin

一、什么是Perl Hash

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

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

keys和values均为任意的标量,但keys通常转换为字符串。因此,如果将表达式/ 作为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 的内插。

推荐整理分享Perl 哈希Hash用法之入门教程(perl的哈希),希望有所帮助,仅作参考,欢迎阅读内容。

Perl 哈希Hash用法之入门教程(perl的哈希)

文章相关热门搜索词:perl哈希值排序,hash pipe,perl的哈希,perl遍历哈希,perl 哈希数组,perl 哈希数组,perl哈希值排序,perl 哈希数组,内容如对您有帮助,希望把文章链接给更多的朋友!

perl哈希的一个实例分析 #!/bin/perlusestrict;usewarnings;my%movies;my$film;my%reverse_result;my$director;my@data;%movies=('TheShining'='Kubrick','TenCommandments'='DeMille','Goonies'='Spielberg',);#输出哈希的值,输

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

Perl 哈希的创建和引用介绍 语法创建'引用'仅有两种方法,使用它也是两种。创建引用创建规则1如果你在一个变量前加一个'/'号,你就得到了这个变量的'引用'。$aref=/@array;#$aref保

标签: perl的哈希

本文链接地址:https://www.jiuchutong.com/biancheng/372530.html 转载请保留说明!

上一篇:Perl使用File::Basename获取文件扩展名的代码(perl fileparse)

下一篇:perl哈希的一个实例分析(perl遍历哈希)

  • 土地增值税常见问题及解答
  • 厂房租赁税点
  • 甲乙公司与银行之间的往来如何记账
  • 标的物的风险负担
  • 企业净利润怎么分配
  • 主营业务成本的数据从哪里来的
  • 鸡蛋普通发票能不能抵扣增值税呢
  • 金税盘锁死日期16号几点
  • 公司交房租没有开票能记账?
  • 增值税税率2019
  • 技术研发费加计扣除
  • 税控系统技术维护费抵税怎么申报
  • 固定资产原值增加当月计提折旧吗
  • 股东退出资本金收回
  • 收到客户银行按时到账
  • 开具的增值税发票丢失最新处理办法
  • 出口业务增值税免抵税额
  • 单次劳务费税率
  • 失控发票如何认定
  • 学校有没有纳税人识别号
  • 公司的差旅费
  • 固定资产减值准备属于什么科目
  • 退回的增值税怎么做会计记录
  • 享受企业所得税税额抵免优惠的设备包括
  • 在会计上主营业务利润和营业利润有什么区别?
  • 公司参展费取得发票怎样做账?
  • 电商刷单手续费做什么费用?
  • 作业成本法的成本对象包括哪几个层次
  • 处置报废车辆如何缴纳增值税
  • 发票已认证但是没申报跨年度了怎么办
  • linux用途是什么
  • php利用云片网实现短信验证码功能的示例代码
  • win7旗舰版如何恢复出厂设置
  • mac计算器怎么变小
  • laravel 5.4中实现无限级分类的方法示例
  • 应收账款需要计提损失准备吗
  • 投标文件中财务报表包括哪些内容
  • 冰川洞洞打法
  • 供电企业接收用户资产
  • php函数传值的引用是什么
  • mysql识别中文
  • 红字信息表重复了怎么办
  • 公司注册资金多好还是少好
  • 哪些税费需要计提
  • 国家税务总局关于营改增后土地增值税
  • 主营业务收入和销售费用的区别
  • 脚手架租赁费用超过购买价格
  • 新办商贸企业是国企吗
  • 企业增值税抵扣包括哪些内容
  • 捐赠支出汇算清缴需要调增吗
  • 存货按照计划成本法核算内容
  • 本年利润会计处理流程
  • 劳务派遣公司经营情况说明怎么写
  • 劳保用品费用计入什么科目
  • 自然灾害的原因有哪些
  • 企业购进生产用品税率
  • 发票融资贷款怎么做账
  • 成品油购进数据选择没有发票
  • 行政单位维修管理制度
  • 建筑材料租赁公司
  • 无发票临时工劳务费账务处理
  • 政府补助的内容
  • 税务稽查补缴增值税税的账务处理流程
  • 企业注销固定资产清理税务处理
  • 分公司账务处理需要注意哪些
  • sqlserver 获取字符位置
  • centosrpm安装
  • LibreOffice 4.1.4 正式版下载
  • 如何查看文件系统
  • 如何短时间内学会打字
  • cmd命令进行ftp下载文件夹
  • opengl示例
  • jquery 插件写法
  • [置顶]公主大人接下来是拷问时间31
  • angular nz
  • Unity同时接入ShareSdk和微派支付sdk(二)
  • CA证书如何办理?
  • 注册一个信息咨询公司需要什么
  • 浙江残保金征收标准
  • 美国各州地税税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设