为什么 100 ~~ ^100 return 在 Perl 6 中为假?
Why does 100 ~~ ^100 return false in Perl 6?
perl6 -e '100 ~~ ^100'
returns False
,在我看来应该是 return True
,因为 100 在 0 和100. 这是 Range
class 设计的一部分,我只是在这里不理解还是这是一个错误?
插入符号[=10=]表示端点被排除在范围之外,因此实际上不包括100。
perl6 -e '100 ~~ 100'
将 return true
.
解读为:设计的一部分,cf. https://doc.perl6.org/type/Range
^100
的语法 0 ..^ 100
是 short-hand,^
表示 "excluding"。 0 ..^ 100
实际上是数字 0 到 99。那是因为使用 ^100
你会得到一个恰好包含 100 个元素的列表 - 这对于 for
循环非常有用。
别忘了你可以用 say (^100).list
.
输出整个列表
除此之外,还有^..
和^..^
不包括第一个元素或第一个和最后一个元素。
perl6 -e '100 ~~ ^100'
returns False
,在我看来应该是 return True
,因为 100 在 0 和100. 这是 Range
class 设计的一部分,我只是在这里不理解还是这是一个错误?
插入符号[=10=]表示端点被排除在范围之外,因此实际上不包括100。
perl6 -e '100 ~~ 100'
将 return true
.
解读为:设计的一部分,cf. https://doc.perl6.org/type/Range
^100
的语法 0 ..^ 100
是 short-hand,^
表示 "excluding"。 0 ..^ 100
实际上是数字 0 到 99。那是因为使用 ^100
你会得到一个恰好包含 100 个元素的列表 - 这对于 for
循环非常有用。
别忘了你可以用 say (^100).list
.
除此之外,还有^..
和^..^
不包括第一个元素或第一个和最后一个元素。