【问题标题】:List comprehension for first 10 alphabets [duplicate]前10个字母的列表理解[重复]
【发布时间】:2015-12-05 04:09:33
【问题描述】:

我正在尝试生成前 10 个字母的列表理解。

letters = [l for l in 'a-j']
print(letters)

输出:

['a', '-', 'h']

这不会产生预期的输出。如何生成前 10 个字母的列表?

【问题讨论】:

  • a-j 看起来像一个正则表达式。你对letters = [l for l in 'abcdefghij']不满意吗?
  • 如果你不想要一个字符范围类,你总是可以用letters = list('abcdefghij')对其进行硬编码。

标签: python list


【解决方案1】:

使用string.ascii_lowercase,其中包含默认存储的小写字母。

>>> import string
>>> string.ascii_lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> list(string.ascii_lowercase[:10])
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']

【讨论】:

  • 因为 OP 试图弄清楚如何获取 a 和 j 之间的字符,也许 list(string.ascii_lowercase[string.ascii_lowercase.index('a'):string.ascii_l owercase.index('f')+1]) 会更清楚?
猜你喜欢
  • 2016-06-20
  • 2018-04-13
  • 2019-04-05
  • 1970-01-01
  • 2019-02-10
  • 1970-01-01
  • 2020-12-16
  • 1970-01-01
  • 2023-03-20
相关资源
最近更新 更多