免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4458 | 回复: 8
打印 上一主题 下一主题

有个关于哈希的问题求助 [复制链接]

论坛徽章:
1
处女座
日期:2014-12-12 10:55:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-06-02 15:49 |只看该作者 |倒序浏览
假如我有一行数据
15H01465, 1.426042, 0.951233, 0.615978, -9.56578, 32.653958, M
15H01466, 0.425223, -0.92539, -0.744484, -8.907805, 36.683619, M
15R01445, 0.761605, 0.669665, 0.21961, -8.380878, 35.869082, M
15R01446, -1.00751, -0.610632, 0.114588, -12.722134, 46.077545, M
我想以第一个逗号之前的作为keys,后面的所有作为values
我想这么写
$hash{'15H01465'} = "1.426042, 0.951233, 0.615978, -9.56578, 32.653958, M";
但是这样出的结果是错了
希望有懂的人教教我
该怎么写
不胜感激

论坛徽章:
42
19周年集字徽章-周
日期:2019-10-14 14:35:31平安夜徽章
日期:2015-12-26 00:06:30数据库技术版块每日发帖之星
日期:2015-12-01 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43IT运维版块每日发帖之星
日期:2015-08-17 06:20:00寅虎
日期:2014-06-04 16:25:27狮子座
日期:2014-05-12 11:00:00辰龙
日期:2013-12-20 17:07:19射手座
日期:2013-10-24 21:01:23CU十二周年纪念徽章
日期:2013-10-24 15:41:34IT运维版块每日发帖之星
日期:2016-01-27 06:20:0015-16赛季CBA联赛之新疆
日期:2016-06-07 14:10:01
2 [报告]
发表于 2015-06-02 17:34 |只看该作者
报什么错?
my %hash;
定义了没?

论坛徽章:
26
2015亚冠之胡齐斯坦钢铁
日期:2015-06-25 21:40:202015亚冠之柏斯波利斯
日期:2015-08-31 17:03:192015亚冠之柏斯波利斯
日期:2015-11-07 13:10:00程序设计版块每日发帖之星
日期:2015-11-10 06:20:00每日论坛发贴之星
日期:2015-11-10 06:20:00程序设计版块每日发帖之星
日期:2015-11-26 06:20:00程序设计版块每日发帖之星
日期:2015-12-02 06:20:00黄金圣斗士
日期:2015-12-07 17:57:4615-16赛季CBA联赛之天津
日期:2015-12-23 18:34:14程序设计版块每日发帖之星
日期:2016-01-02 06:20:00程序设计版块每日发帖之星
日期:2016-01-06 06:20:00每日论坛发贴之星
日期:2016-01-06 06:20:00
3 [报告]
发表于 2015-06-02 21:00 |只看该作者
回复 1# jiangphoenix


还不是很明白
我这么写
貌似也是有输出报什么错
ff1.426042, 0.951233, 0.615978, -9.56578, 32.653958, M
  1. my %hash;
  2. $hash{'15H01465'} = "1.426042, 0.951233, 0.615978, -9.56578, 32.653958, M";
  3. say $hash{'15H01465'};
复制代码

论坛徽章:
1
处女座
日期:2014-12-12 10:55:00
4 [报告]
发表于 2015-06-03 10:49 |只看该作者
回复 2# laputa73

之前定义了my %hash呀, 主要是多行下来后,数值都变了
   

论坛徽章:
7
巳蛇
日期:2013-11-28 09:22:59天秤座
日期:2014-10-25 15:40:452015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之德黑兰石油
日期:2015-07-15 08:46:452015亚冠之平阳省
日期:2015-11-08 16:27:53白银圣斗士
日期:2015-11-14 09:58:12
5 [报告]
发表于 2015-06-03 11:15 |只看该作者
  1. use 5.010;

  2. my %hash;
  3. $hash{'15H01465'} = "1.426042, 0.951233, 0.615978, -9.56578, 32.653958, M";
  4. say  $hash{'15H01465'};
复制代码
试试!

论坛徽章:
1
处女座
日期:2014-12-12 10:55:00
6 [报告]
发表于 2015-06-03 12:28 |只看该作者
回复 5# b114213903
好好,我试试   

论坛徽章:
1
狮子座
日期:2014-02-25 09:46:33
7 [报告]
发表于 2015-06-09 19:12 |只看该作者
key值是唯一的不能相同,如果有相同,后面的会把前面的覆盖

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
8 [报告]
发表于 2015-06-10 18:07 |只看该作者
如果 key 不是唯一的,最好不要使用 hash, 因为 hash 会自动过滤重复的 key, 并且失去顺序。

最好用数组的数组:

[
  [15H01465 , 1.426042, 0.951233, 0.615978, -9.56578, 32.653958, M]
   ...
]

论坛徽章:
1
处女座
日期:2014-12-12 10:55:00
9 [报告]
发表于 2015-10-26 14:09 |只看该作者
回复 8# 104359176
谢谢

   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP