gpt4 book ai didi

slice - 数组切片中的多个组件 - 相当于 perl5 : @a[0. .1,3]

转载 作者:行者123 更新时间:2023-12-04 01:55:46 25 4
gpt4 key购买 nike

非常基本的问题,但我似乎无法在文档中找到有关多个范围的任何信息。

如何从 perl6 数组中选择多个范围?

my @a = "a","b","c","d";

@a[0..1,3] # expecting array with a, b & d as p5

这似乎返回了一种嵌套列表,Perl 6 语法是什么来实现在 Perl 5 中产生的结果(即带有 abd 的数组)?

最佳答案

你的问题有点令人困惑,但假设你只是有错别字或其他什么,我会试着猜测你在问什么。

这构成了一个简单的数组:

> my @a = "a", "b', "c", "d";
[a b c d]

这构成了一个 Range 的匿名数组来自 0..1和一个 3:
> @[0..1,3];
[0..1 3]

如果您希望它从 @a 中提取值数组,你必须引用它:
> @a[0..1,3];
((a b) d)

@a 中提取您要求的位-- 第一个元素是 0..1 @a 的零件, (a,b) -- (不知道你为什么想在这里看到 c ..)

这是嵌套列表——您要求的两个位包括第一个字段中的列表和值 d您在第二个字段中要求。

如果你想让它变平而不是嵌套,你可以使用 .flat :
> @a[0..1,3].flat;
(a b d)

关于slice - 数组切片中的多个组件 - 相当于 perl5 : @a[0. .1,3],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52625526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com