gpt4 book ai didi

file - 在perl6中,如何以段落模式读取文件?

转载 作者:行者123 更新时间:2023-12-04 15:10:27 25 4
gpt4 key购买 nike

数据.txt:

hello world
goodbye mars

goodbye perl6
hello perl5

我的程序.py:
my $fname = 'data.txt';
my $infile = open($fname, :r, nl => "\n\n");

for $infile.lines(nl => "\n\n") -> $para {
say $para;
say '-' x 10;
}

实际输出:
hello world
----------
goodbye mars
----------

----------
goodbye perl6
----------
back to perl5
----------

期望的输出:
hello world
goodbye mars
-----------
goodbye perl6
back to perl5
-----------

...
$ perl6 -v
This is perl6 version 2015.03-21-gcfa4974 built on MoarVM version 2015.03

最佳答案

这似乎是 Rakudo/MoarVM 中的一个错误,可以追溯到 MoarVM 期望单个字形作为分隔符而不是任意字符串的事实(参见 syncfile.c:38syncfile.c:119syncfile.c:91 ,这表明使用分隔符字符串而不是整个字符串)。

作为一种快速解决方法(但请注意,这会将整个文件读入内存),请使用

$fname.IO.slurp.split("\n\n")

而不是 $infile.lines() .

您还应该提交错误报告或询问 #perl6在 Freenode 上,如果这是一个已知问题。

关于file - 在perl6中,如何以段落模式读取文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29178966/

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