gpt4 book ai didi

perl - 为什么我看到我的 Perl 哈希是一个分数,比如 '28/64' ?

转载 作者:行者123 更新时间:2023-12-05 00:53:19 25 4
gpt4 key购买 nike

例如,我正在尝试将散列中的键名设置为包含“/”符号的字符串

$myshash{"/dev/shm"} = "shared memory";

但是在使用 Data::Dumper 查看时,我得到的是类似“28/64”等信息。
如何在哈希键名称中使用这些特殊字符?

最佳答案

28/64 来自将散列视为标量,并且表示使用了多少个存储桶(以及存储桶的总数)。将它作为散列而不是标量转储,您应该会看到正确的数据——您所做的没有任何问题。

这对我来说很好用:

use Data::Dumper;

my %hash;
$hash{"/dev/shm"} = "shared memory";

print Dumper(\%hash);

和输出:
$VAR1 = {
          '/dev/shm' => 'shared memory'
        };

为了澄清和回答您的根本问题,您没有在哈希中使用特殊字符。由于大多数语言在内部将字符串散列为整数(仍在学习 Perl,但这就是 Python 的工作方式),如果您愿意,您可以将高等 Sprite 的著作中的 rune 字形放入其中,并且 key 创建会正常工作。哈希函数不在乎。

关于perl - 为什么我看到我的 Perl 哈希是一个分数,比如 '28/64' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1669907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com