【发布时间】:2020-04-25 01:27:00
【问题描述】:
代码如下:
my @s=<a b c d>;
for @s.kv {
for ($^k ... @s.elems) {
printf("%s ", $^v);
}
printf("\n");
}
预期输出是:
# a b c d
# b c d
# c d
# d
但它给出了这个错误(可能还有其他错误)
key 0, val 1 Too few positionals passed; expected 2 arguments but got 1
看起来主循环$^k和$^v的位置变量不能在内循环内部使用。如何解决?谢谢。
更新:内循环内的错字已修复
【问题讨论】:
-
预期输出 100% 与您的打印语句不匹配。
($^k...@s.elems)也给你索引而不是值。 -
操作。这是我的笔记留下的。更新了该部分。
标签: loops raku positional-parameter