小编dew*_*man的帖子

如何在Perl中跟踪全局变量?

我正在寻找别人的代码,他们打开一个文件:

(open (FILEHANDLE,'/homedirectory/textfile.txt')) 
Run Code Online (Sandbox Code Playgroud)

然后,他们将每行的内容放入一个变量进行处理(文件的每一行都包含由制表符分隔的数据):

while(<FILEHANDLE>) {
($var1, $var2, $var3, $var4) = split (/\t+/, $_);
Run Code Online (Sandbox Code Playgroud)

然后他做了类似的事情:

$index = join('_', $var1, $var2, $var3);
Run Code Online (Sandbox Code Playgroud)

然后做这个(我划伤脑袋的部分)

$contents = $filehandle{"$index"};
Run Code Online (Sandbox Code Playgroud)

我尝试打印出来$contents,它看起来像是值$var1,$var2并且$var3全部用分号分隔(例如" value1;value2;value3").另外,我更改了FILEHANDLEto 的名称FILEHANDLE2并做了同样的事情$filehandle,我得到了完全相同的结果,所以这让我相信它们是相关的.此外,当FILEHANDLE单独离开并改变$filehandle$filehandle2,什么都没有出现.任何帮助将不胜感激,因为我已经坚持了很长一段时间.另外,我是一个perl n00b ...(我主要用Python编程).

根据要求,这是一个更完整的代码版本:

sub myfn{
    $filename = "home/textfile.txt";
    open(FILEHANDLE, $filename) || die "Can't find filename\n";
    while (<FILEHANDLE>) {
        ($var1, $var2, $var3) = split (/\t+/, $_);
        $used_index = join ('_', $var1, $var2, …
Run Code Online (Sandbox Code Playgroud)

io perl file

1
推荐指数
1
解决办法
173
查看次数

标签 统计

file ×1

io ×1

perl ×1