我正在尝试在Haskell中创建一个包含字母a..z的无限列表,然后重复以1(“ a1 ... z1”),然后是2(“ a2” ..“ z2”)等后缀的形式。
目前,我所能进行的最深入的工作是使用列表推导从az和1-9的两个列表中生成每个字符串组合的列表,但是我不知道如何将其应用于我的问题。我也尝试过使用map函数,但也无法弄清楚如何将其应用于我的问题
variables :: [Var]
variables = [x : y | y <- "" : variables, x <- ['a'..'z'] ++ ['0'..'9']]
Run Code Online (Sandbox Code Playgroud)
输入[variables !! i | i <- [0,1,25,26,27,100,3039]]ghci应该会给出:
["a","b","z","a1","b1","w3","x116"],但是目前我得到的结果是:["a","b","z","0","1","2b","plb"]。任何帮助将非常感激