使用" printf"在Haskell的列表中

时间:2016-04-16 11:28:04

标签: haskell printf

如何在列表中使用printf? 我有一个数字列表,我想通过尊重格式打印它们(例如:%.3f)。我尝试使用printf上的地图,但它不起作用。所以,我不知道。有人可以帮我这个吗?任何想法都可以接受。有没有办法从列表中创建一个关于自定义格式的字符串?

1 个答案:

答案 0 :(得分:1)

printf可以生成字符串,而不是只将它们打印到stdout。这个 是因为它的结果类型超载(它也是机器的一部分) 这使它成为可变的。)

import Text.Printf

main :: IO ()
main = putStrLn . unwords $ printf "%.3f" <$> ([1..10] :: [Double])

这应该可以解决问题。

BTW,printf不是类型安全的,可以在运行时打击。我建议你使用 就像是 formatting