是否存在与功能编程中的“ zip”等效的PowerShell?
我想要两个输入序列,并返回包含配对元素的元组序列。语言中是否有内置方法或某些内置方法可以简化此过程?
顺便说一句,我希望该解决方案对于PowerShell而言非常“自然”并与管道集成。
有点麻烦,但是可以用:
脚本文件test.ps1:
param( $fnop, $first, $second)
$retval = @()
$len = if($first.length -lt $second.length) { $first.length } else { $second.length }
for( $i = 0; $i -lt $len; $i++) {
$oprslt = $fnop.invoke( $first[$i], $second[$i])
$retval = $retval + $oprslt
}
$retval
例子:
# add and sort
PS> .\test.ps1 {param($a,$b) return $a+$b} (3,2,1) (8,-4,5) | sort
11
-2
6
# add only
PS> .\test.ps1 {param($a,$b) return $a+$b} (3,2,1) (8,-4,5)
-2
6
11
# multiply and sort
PS> .\test.ps1 {param($a,$b) return $a*$b} (3,2,1) (8,-4,5) | sort
-8
5
24
功能块{param($a,$b) return $a+$b}
是您的zip功能。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句