之前用的是: my %hash=undef; 后来发现程序中存在一个空值,元素个数为1.经过分析发现可能是这个undef的问题,所以我改成了: my %hash=(); 定义后的元素个数为0;it works!