要列出的Haskell字符串

问题描述

| [\“ 6 \”,\“ \”,\“ [[1,2,3,4,5,6],[7,8,9,10,11,12],[13,14,15, 16,17,18],[19,20,21,22,23,24],[25,26,27,28,29,30],[31,32,33,34,35,36]] \ “] 我必须从这6和[[1,15,16,18]中得到[19,36]] 我从文件中读取文件看起来 6。 [[1,21, 22,36]。 我尝试了map并读取了转换字符串的信息,但是它没有用。 对不起英语     

解决方法

        直接使用
map
read
的问题是列表元素的类型不同。第一个元素是(或更好:应转换为)
Int
,第二个元素为空列表,第三个元素为
`[[Int]]
。 要将列表的第一个元素转换为
Int
,可以说类似
read $ head xs :: Int
,其中
xs
是您的字符串列表。 第二个元素不能通过读取直接转换,因为空字符串将导致异常(Prelude.read:无解析)。 要转换第三个元素,它是整数列表的列表,您可以简单地说“ like7”。 这不是安全或优雅的方法,但是如果您的输入始终具有这种结构,则应该可以使用。     

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...