arrays - 如何在 Perl 中将多个数组传递给 'foreach' 循环?

标签 arrays perl foreach

我想将两个数组中的项目写入一个文件,例如

 @a = ('1', '2', '3')
 @b = ('0.1', '0.2', '0.3')

我想要这样的输出:

1 0.1
2 0.2
3 0.3

在文件中。

我尝试使用两个 foreach 循环,这显然是错误的,

 foreach my $a (@a) {
    foreach my $b (@b) {
        print FP "$a $b \n";
    }
 }

这是错误的。如何将多个数组传递到 Perl 中的 foreach 循环?

最佳答案

如果要并行输出 @a@b 的所有元素,可以循环遍历其中一个的所有索引(数组大小相同,因此哪个并不重要),并使用它来访问实际元素($a[$i]$b[$i])

foreach my $i (0 .. $#a) {
  print "$a[$i] $b[$i] \n";
}

关于arrays - 如何在 Perl 中将多个数组传递给 'foreach' 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19512967/

相关文章:

java - Storm 发射整数数组并检索它

Javascript for 循环和数组

perl - 什么是打印<<EOF;它是如何工作的?

perl - 在 Perl 中使用 "return warn"是好习惯吗?

javascript - 是否有理由在 ES6 中使用 array.forEach() 而不是 for...of,当两者都可以使用时?

c# - C#foreach问题

objective-c - for (NSArray *a in directory) 无法按我的预期工作

python - numpy 数组 reshape 添加维度

php - 如果可能的话,使用 PHP 从 JSON 格式的两个 MySQL 表中获取数据

perl - Getopt::Long 带有特殊字符选项(例如 -%)