Haskell,从打印中写入非字符串

Haskell, write non-string from print

s <- readFile $ head aruments
print $ myFoo s

s 是一个字符串。 myFoo 是一个 String -> String

它向终端写入如下内容:

"['a', 'b', 'c']"

让我恼火的是" "。可以只写['a', 'b', 'c']吗?我的意思是在交互的情况下:

interact myFoo 

仅写入终端 ['a', 'b', 'c'] 尽管 myFoo returns String.

print :: Show a => a -> IO () 将始终使用 show,这会引入额外的引号。如果你已经有一个 String,使用 putStrLnputStr,这取决于你是否想在放置 String.

之后有一个换行符