位置: 编程技术 - 正文

perl哈希hash的常见用法介绍(perl 哈希用法)

编辑:rootadmin

基本用法

#初始化%h为空数组 %h={};#用数组初始化%h为a=>1,b=>2 %h=('a',1,'b',2);#意义同上,只是另一种更形象化的写法。%h=('a'=>1,'b'=>2);#如果key是字符串,可以省略引号。下面这行和上面那行是一样的%h=(a=>1,b=>2);#用{}来访问print “$h{a}n”;#打印 $h{b}='2b'; print “$h{b}n”; #打印2b#删除key用delete delete$h{b}; #从$h删除'b'

清空Perl Hashundef %h;

得到hash的所有键值#得到所有keys,顺序取决于hash函数,或者说是乱序@all_keys=keys%h; #所有键值,是按hash的值从大往小排列的。值的比较是数字比较(比如说,>9) , @all_keys=sort{$h{$b} => $h{$a}}(keys%h);

判断Perl Hash是否包含key exists($h{$key});

Perl Hash的长度想要知道一个hash存放多少数据$hash_size=keys%h #把%h的长度放到$hash_size中print scalar keys %h,"n"; #打印%h的长度。这里用了scalar来返回数组长度。

遍历一个Perl Hashwhile(my($k,$v)=each%h){print"$k--->$vn";}

Reference引用Reference类似于C/C++的指针$h_ref=%h; #获得一个hash的reference, %aHash=%{$h_ref}; #把hash reference当成hash用 $value=$h_ref->{akey}; #这个和%h{akey}是一样的

传递Perl Hash到函数一般都是传递一个reference到函数%h=(); $h{a}=1; foo(%h); print $h{b},"n"; #打印出2。这个值来自于函数foo(), sub foo{my ($h)=@_; print $h->{a},"n"; #打印出1 $h->{b}=2;}

函数返回hash,或者hash引用(hashreference)函数可以返回Perl Hashsub foo{my %fh; $fh{a}=1; return %h;} my %h=foo(); print "$h{a}n"; #打印出1但是这样等于把整个hash从%fh复制到了%h,效率比较低。可以考虑返回hash的引用:sub foo{my %fh; $fh{a}=1; return %fh;} my $hr=foo(); print "$hr->{a}n"; #打印出1. my %h=%{foo()} #如果就是想复制,也可以用这种方法。不用担心在sub foo里的%fh是局部变量,Perl会自动管理内存。它会发现%fh被$hr引用,就不会清理%fh的内存,并且$hr失效后释放内存。

推荐整理分享perl哈希hash的常见用法介绍(perl 哈希用法),希望有所帮助,仅作参考,欢迎阅读内容。

perl哈希hash的常见用法介绍(perl 哈希用法)

文章相关热门搜索词:perl哈希赋值,php哈希,perl哈希表,perl哈希值排序,perl哈希表,perl哈希嵌套哈希,perl哈希值排序,perl中哈希如何赋值,内容如对您有帮助,希望把文章链接给更多的朋友!

perl文件包含(do,require,use)指令介绍 1.do:1)形式:do'filename';说明:这里filename需要添加单引号,否则会出错;filename可以为任何后缀的,甚至没有后缀,不要求是pl或者pm等。2)关于do的理

分享下perl胶水实现前后台对接的方法 1.Perl胶水,能够将各种应用程序或者各种语言的代码结合起来。Perl可以编写普通的脚本程序,还可以使用cgi模块编写Web应用程序,同时可以使用DBI访问

Perl localtime时间函数的应用介绍 1.一般使用:@nowtime=localtime();#($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime();注意:$mon+1,$year+;$now_string=localtime;#e.g.,"ThuOct::"2.如果要把

标签: perl 哈希用法

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

上一篇:perl对长度不一文本的行列进行置换的实现代码(perl 匹配不区分大小写)

下一篇:perl文件包含(do,require,use)指令介绍(perl写文件)

  • 对公账户要收手续费吗
  • 外购免税农产品进项税额如何抵扣
  • 公司买手表可以抵扣吗
  • 个人所得税专项扣除子女教育标准
  • 金税盘技术维护费怎么申报
  • 现金流量怎么影响股票价值
  • 收到应收账款逾期短信
  • 公司的会议议程怎么写
  • 企业养老金计算公式举例说明
  • 政府搬迁补偿款记资本公积
  • 生产车间用电产品有哪些
  • 内部资金往来科目
  • 合同没签定金可以退的吗
  • 客户要开票资料干嘛
  • 增值税发票收款人和复核人可以一个人吗
  • 机票报销发票抬头要开公司的吗
  • 发票收款人和开票人
  • 购买小汽车增值税发票金额开错
  • 现金短缺属于出纳员负责如何做会计处理
  • 年度终了,会计部门都要将旧账编造清册
  • 非营利组织属于企业吗
  • 苹果macbookpro分辨率是多少
  • 投入资本回报率是总资产报酬率吗
  • 国家高新技术企业认定评分标准
  • 可以转增资本的有哪些科目
  • php工程师职位描述
  • 索尼体积最小的微单
  • 蒙特勒和日内瓦的关系
  • php+jQuery+Ajax实现点赞效果的方法(附源码下载)
  • 破产清算中欠发工资应否交个人所得税
  • 呆账核销分录
  • 投资收益结转到哪个科目
  • 小企业会计准则财务报表至少包括
  • 私人医院需要缴纳哪些税费
  • 猿厂猿作设计机构招聘
  • gpt3 plug
  • spring的aoc和aop
  • 工业企业采购流程
  • 研发 专利
  • 购买农产品取得增值税普通发票可以抵扣吗
  • 承兑汇票提前承兑手续费
  • 电影院属于什么经济类型
  • 个体工商户怎么年报
  • 折旧方法计算公式
  • 生产线更新改造替换的旧设备
  • 设备租金收入计什么科目
  • 住宿费的进项税额
  • 村料采购会计科目有哪些
  • 住宿费记入成本会计分录
  • 财政拨款结转是
  • 新成立的企业可以申请一般纳税人吗
  • 企业增资还需要增资账户么
  • mysql 5.7.11 winx64初始密码修改
  • win7系统怎么运行xp系统的软件
  • freebsd安装mysql
  • mac安装应用一般放在哪个目录下
  • centos配置IP地址
  • centos chrony
  • win7怎么禁止u盘自动运行
  • ios太极
  • linux参数命令
  • linux-gnu
  • win10怎么把动图设置成壁纸
  • 微信小程序自动跳转怎么关闭
  • ie11滚动条样式
  • opengl详解
  • jquery的使用方法
  • for语句的执行过程图解
  • vue如何用
  • shell脚本编程实验报告
  • unity设置update间隔
  • jquery trigger函数执行两次的解决方法
  • 基于jQuery的AJAX和JSON实现纯html数据模板
  • 简述javascript的主要特点
  • javascript面向对象精要pdf
  • javascript作用域链
  • 个人所得税完税证明
  • 国税新人什么时候入职
  • 税务文件是什么
  • 土地招拍挂土地出让金
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设