perl 菜鸟问题,请求指点,如何理解这行程序

lion7beck 2010-10-08 04:49:41
1 #!/usr/bin/perl
2 use Spreadsheet::Read;
3 use Data::Dumper;
4 use Smart::Comments;
5 my $file = '2808861.xls';
6 my $spreadsheet = ReadData( $file) or die "Cannot read file ";#指定读的文件名
7 my $sheet_count = $spreadsheet->[0]{sheets} or die "No sheets in $file\n"; #这个是查有几个sheet
请问诸位:第七行的“ $spreadsheet->[0]{sheets} ”怎么理解呀??
...全文
85 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fibbery 2010-10-09
  • 打赏
  • 举报
回复
$spreadsheet是一个数组引用,该数组0下标的元素保存的是一个哈希引用,所以访问的时候应该是
$spreadsheet->[0]->{sheets};

如果两个引用相连,可以省略中间的->,即上面的表达式简写为:
$spreadsheet->[0]{sheets};
lion7beck 2010-10-08
  • 打赏
  • 举报
回复
多谢指点~~
iambic 2010-10-08
  • 打赏
  • 举报
回复
读下《Intermediate Perl》吧。
zuo_shen 2010-10-08
  • 打赏
  • 举报
回复
$spreadsheet是一个数组的引用,$spreadsheet->[0]是它的第一个元素。

$spreadsheet->[0]的元素是一个散列,$spreadsheet->[0]{sheets}是散列中键sheets对应的值。

应该是这样。。。

37,738

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧