Perl语言学习笔记 6 哈希
1、哈希的键是唯一的,值可以重复! 2、访问哈希元素 $hashname{“$key”};#哈希为大括号,数组为方括号,键为字符串 $family_name{"fred"} = "firstd";#给哈希元素赋值 3、哈希键支持任意表达式 $foo = "na"; $family_name{$foo."me"};#获取$family_name{“name"}对应的值 4、访问整个哈希 %family_name 5、哈希和列表可以互相转换 %some_hash = {"peison1",35,"person2",43,"person3",56};列表转换为哈希 @arry = %some_hash;哈希转换为列表 6、哈希会对键值对进行重新排序,输出和输入的顺序可能不一样 7、哈希复制与反转 %new_hash = %old_hash;先将old_hash转换为列表,再将列表转换为new_hash %in_hash = reverse %old_hash;键值互换,一般在哈希值唯一的时候方可进行,否则相同键的后来的值会覆盖原来的 8、胖箭头 作为逗号的另一种写法,便于区别键值对 %my_hash = ( "fred" => "fsas", "fdsred"=> "fsdsas", "frsdesdd"=> "fdssas", ) 末尾的逗号不可省略,两边用小括号 9、获取键值 @key = keys %hash;#返回键列表 @value = values %hash;#返回值列表,与key顺序一致 $num = keys %hash;#返回键值对的个数 10、罗列哈希的键值对 while(($key,$value) = each %hash){print "$key => $valuen"; }#each的返回结果为列表,while内布尔求值的结果为列表的元素数(2) 11、常用哈希函数 exists $hash{"dsa"};#判断是否存在dsa键 delete?$hash{"dsa"};#删除指定的键及对应的值,不管是否存在该键,都不会报错,与将该键赋值为undef不同 12、可以将单个哈希值内插到双引号字符串中,"hash value is $hash{$person}";不支持整个哈希的内插 13、获取环境变量的配置等信息 通过存取%ENV实现,如:print "PATH is $ENV{PATH}";可以获得PATH的值 获取程序外设置的环境变量:$ENV{CHARACTER} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |