Python可以像Haskell一样制作字母列表吗?

时间:2012-08-20 03:39:47

标签: python

Haskell可以这样:

['a'..'z']

在Python中:

map(chr, range(97, 123))

我觉得Python很冗长。 让Python像Haskell一样简单吗?

5 个答案:

答案 0 :(得分:13)

是。 from string import ascii_lowercase

答案 1 :(得分:6)

from string import ascii_lowercase
L = list(ascii_lowercase)

答案 2 :(得分:5)

稍微更易读的版本,无需导入任何内容

alphabet = [chr(i) for i in range(ord('a'), ord('z') + 1)]

答案 3 :(得分:1)

没有通用的方法,因为haskell中的语法[a..b]使用特殊的类型类Enum,但是在python中没有特殊的魔术方法或特殊的枚举语法。

答案 4 :(得分:0)

由于您希望将其作为列表,因此您可以执行以下操作:

from string import ascii_lowercase
l = [i for i in ascii_lowercase]