gpt4 book ai didi

raku - 为什么梳子在循环内的行为不同?

转载 作者:行者123 更新时间:2023-12-04 10:46:23 24 4
gpt4 key购买 nike

注意:我从 REPL 中使用
这是基于 MoarVM 版本 2019.03 构建的 Rakudo Star 版本 2019.03.1
实现 Perl 6.d。

从 euler 项目 #22 有一个 names.txt 文件类似于
“JERE”、“HAI”、“ELDEN”、“DORSEY”、“DARELL”、“BRODERICK”、“ALONSO”……

当我读入、拆分和排序时,我得到了我期望的名字列表。

for '../names.txt'.IO.slurp.split(',').sort -> $name {
say $name;
}

那打印出来
...
"ZONIA"
"ZORA"
"ZORAIDA"
"ZULA"
"ZULEMA"
"ZULMA"

现在如果我添加 comb()
for '../names.txt'.IO.slurp.split(',').sort -> $name {
say $name.comb;
}

我越来越
...
(" Z O N I A ")
(" Z O R A ")
(" Z O R A I D A ")
(" Z U L A ")
(" Z U L E M A ")
(" Z U L M A ")

但是,如果我只是从 repl 运行;
> "ZULMA".comb

我得到

(Z U L M A) # 注意没有引号

为什么 comb 在这两种情况下表现不同?

最佳答案

它的行为并没有不同。在一种情况下,引号是语法元素 - 代码的一部分 - 在另一种情况下,从文件中逐字读取数据:

"ZULMA".comb
'"ZULMA"'.comb

数据不一样。不是行为。

关于raku - 为什么梳子在循环内的行为不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58976807/

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