perl6 -e '100 ~~ ^100'
返回False
,在我看来它应该返回True
,因为100在0到100之间的范围内。这是设计的一部分Range
我只是在这里不理解这个课程,还是这个错误?
答案 0 :(得分:14)
语法^100
是0 ..^ 100
的简写,^
表示“排除”。 0 ..^ 100
实际上是0到99之间的数字。这是因为^100
会得到一个包含100个元素的列表 - 这对于for
循环非常有用。
不要忘记您可以使用say (^100).list
输出整个列表。
除此之外,还有^..
和^..^
排除第一个元素或第一个和最后一个元素。
答案 1 :(得分:5)
插入符^
表示端点被排除在范围之外,因此实际上不包括100。
perl6 -e '100 ~~ 100'
将返回true
。
读作:设计的一部分,参见https://doc.perl6.org/type/Range