gpt4 book ai didi

string - 如何在 Haskell 中通过列表理解正确生成字符串列表?

转载 作者:行者123 更新时间:2023-12-02 06:20:47 27 4
gpt4 key购买 nike

我需要使用列表理解来生成这样的列表:[“AaBB”,“AbBB”,“AcBB”,​​“AdBB”,“AeBB”,“AfBB”,“AgBB”]。但我在创建表达式来执行此操作时遇到了一些问题

我尝试创建一个列表,其中每个元素都是字符串连接,类似于“A”+x+“BB”,其中x是以“a”开头并以“a”结尾的一系列字母中的元素“g”

module C where
genList :: [String]
genList = [ "A" ++ x ++ "BB" | x <- ["a" .. "g"]]

所以,我希望生成一个类似于问题中所要求的列表。但我只是得到了这个编译错误:

Prelude> :l exC
[1 of 1] Compiling C ( exC.hs, interpreted )

exC.hs:3:41: error:
• No instance for (Enum [Char])
arising from the arithmetic sequence ‘"a" .. "g"’
• In the expression: ["a" .. "g"]
In a stmt of a list comprehension: x <- ["a" .. "g"]
In the expression: ["A" ++ x ++ "BB" | x <- ["a" .. "g"]]
|
3 | genList = [ "A" ++ x ++ "BB" | x <- ["a" .. "g"]]
| ^^^^^^^^^^^^
Failed, no modules loaded.

最佳答案

您不能使用..构建字符串列表的语法。幸运的是,您在这里将它用于单字符字符串,因此您可以使用它来构建字符列表: [ "A" ++ x : "BB" | x <- ['a' .. 'g']]

关于string - 如何在 Haskell 中通过列表理解正确生成字符串列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57749964/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com