List Haskell输出ascii值列表
例如,我有一个haskell列表List Haskell输出ascii值列表,list,haskell,List,Haskell,例如,我有一个haskell列表[72,73,74,75],如何将此列表作为字符串输出?列表中的所有元素都是ascii值。您可以使用模块字符中的“chr”将整数值转换为字符: import Char intListToString l = [ chr x | x <- l ] main = do putStrLn $ "the string: " ++ (intListToString [72,73,74,75]) 您可以组合将函数应用于列表的每个元素的map,以及将Int值转换
[72,73,74,75]
,如何将此列表作为字符串输出?列表中的所有元素都是ascii值。您可以使用模块字符中的“chr”将整数值转换为字符:
import Char
intListToString l = [ chr x | x <- l ]
main = do
putStrLn $ "the string: " ++ (intListToString [72,73,74,75])
您可以组合将函数应用于列表的每个元素的
map
,以及将Int
值转换为其Char
等效值的chr
函数:
> map chr [72,73,74,75]
"HIJK"
您可以使用
chr::Int->Char
将Int
代码点转换为Char
;String
只是Char
s的列表。请注意,这将适用于任何Unicode代码点,而不仅仅是ASCII,这是您无论如何都应该做的事情
您可以使用以下方法找到类似的函数:;只需键入类似于
Int->Char
的内容,它将为您提供与该类型匹配的函数。您希望此列表为直字符串还是带逗号的列表?除非要将ASCII字符值转换为对应的字符(已介绍),否则可以执行以下操作:
concatMap show [72,73,74,75]
将给您一个“72737475”字符串和
init $ tail $ show [72,73,74,75]
将给您一个“72,73,74,75”字符串
init $ tail $ show [72,73,74,75]