为什么Perl 6序列’A’…’AA’只有一个元素?
发布时间:2020-12-15 21:49:48 所属栏目:大数据 来源:网络整理
导读:今天我注意到序列’A’…’AA’只包含一个元素: 'A' ... 'AA'(A) 我认为它将包含27:字母加上最终AA. 如果我明确提供了一个生成器,它会: 'A',*.succ ... 'AA'(A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA) 文档说默认生成器是* .succ或* .pre
今天我注意到序列’A’…’AA’只包含一个元素:
> 'A' ... 'AA' (A) 我认为它将包含27:字母加上最终AA. 如果我明确提供了一个生成器,它会: > 'A',*.succ ... 'AA' (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA) 文档说默认生成器是* .succ或* .pred,具体取决于端点的比较方式.但: > 'A' cmp 'AA' Less 所以我似乎应该默认获得* .succ生成器.我肯定没有得到* .pred生成器: > 'A',*.pred ... 'AA' Decrement out of range in whatevercode at <unknown file> line 1 这里发生了什么? 解决方法
看看它使用的代码:
rakudo/operators
你的代码非常相似 "A",*.succ ...^ * gt "AA" (“B”gt“AA”为True) 和Curt Tilmes的代码类似 "A",*.succ ...^ {$_ gt "ZZ" or .chars > "ZZ".chars} "A",*.succ ...^ {$_ gt "YY" or .chars > "YY".chars} (“Z”gt“YY”和“AAA”.chars>“ZZ”.chars为True) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |