私はハスケルには新しく、実際には私が実際に実行しているいくつかのテストケースを試してみようとしています。私は、次を含むテキストファイル「foo.txtの」を持っていると言う:Haskell出力のリストに不思議な単語( "LPS")が表示される
45.4 34.3 377.8
33.2 98.4 456.7
99.1 44.2 395.3
私は出力を生成しようとしています
[[45.4,34.3,377.8],[33.2,98.4,456.7],[99.1,44.2,395.3]]
「私のコードは以下の通りですが、私はいくつかの偽の取得していますLPS "の出力に...それが何を表しているのか分かりません。
import qualified Data.ByteString.Lazy.Char8 as BStr
import qualified Data.Map as Map
readDatafile = (map (BStr.words) . BStr.lines)
testFunc path = do
contents <- BStr.readFile path
print (readDatafile contents)
testFunc "foo.txtの"出力は、すべてのヘルプは高く評価され
[[LPS ["45.4"],LPS ["34.3"],LPS ["377.8"]],[LPS ["33.2"],LPS ["98.4"],LPS ["456.7"]],[LPS ["99.1"],LPS ["44.2"],LPS ["395.3"]]]
あるとinvocated!ありがとう。 PS:ByteStringを使用すると、将来大量のファイルに使用されるようになります。
編集:私はまた、出力リストは、上記のようにグループ化される理由として困惑してい
GHCiの中に次の行が異なるarrangmentを与え、([]に結合し、各番号を有します)。
*Main> (map words . lines) "45.4 34.3 377.8\n33.2 98.4 456.7\n99.1 44.2 395.3"
[["45.4","34.3","377.8"],["33.2","98.4","456.7"],["99.1","44.2","395.3"]]
私はそれが怠惰な評価に関連していたと思っていた。私は他のどのようにしかし私はリストを扱うことができますか? – jparanich
私はそう思う - 私の理解は、あなたが(大抵の場合は)心配してはならないという別の内部表現であるということです。しかし、私はHaskell super-wellを知らない。ちょっと怪しいものが見えたら、これを忘れないでください。 –