String 将包含元组的列表转换为格式化字符串
我有String 将包含元组的列表转换为格式化字符串,string,list,haskell,tuples,String,List,Haskell,Tuples,我有[(Double,Double)]返回的列表,我想格式化它并像字符串那样返回它 "(Double, Double)" 值必须转换为上述行中提到的字符串,即Double 如果列表中有多个值,则应将其格式化为: "(Double, Double), (Double, Double), ..., (Double, Double)" 您可以使用列表的本机Show实例: showPairSequence :: [(Double, Double)] -> String showPairSequ
[(Double,Double)]
返回的列表,我想格式化它并像字符串那样返回它
"(Double, Double)"
值必须转换为上述行中提到的字符串,即Double
如果列表中有多个值,则应将其格式化为:
"(Double, Double), (Double, Double), ..., (Double, Double)"
您可以使用列表的本机Show
实例:
showPairSequence :: [(Double, Double)] -> String
showPairSequence = init . tail . show
如果确实要打印Double
s的特定值,则efie
给出了正确答案。但是,如果您只想显示字符串“Double”
,则可以使用以下答案:
format = intercalate ", " . map (const "(Double, Double)")
如果列表包含多个元组,会发生什么情况?您可能正在查找f xs=map show xs
,但是如果没有更多信息,很难判断。你能用你期望的输入和输出的例子来编辑你的文章吗?例如,您希望输入[(1.0,2.0),(3.5,4.5)]
的输出是什么?如果列表中有更多的元组,我希望“(Double,Double),(Double,Double),…”
。只需使用列表上的show函数。init。尾部
?也许showPairSequence=show
会更好?@БММММППЙМААЛСБССССb原始海报不想要“[”或“]”只有一个建议:使用插入
,它结合了concat
和穿插。
format = intercalate ", " . map (const "(Double, Double)")