Python:使用嵌套理解将字符串列表按长度拆分为字符串列表列表

标签 python nested list-comprehension

我有一个字符串列表,我正在尝试按字符串长度制作一个字符串列表列表。

['a', 'b', 'ab', 'abc'] 

成为

[['a', 'b'], ['ab'], ['abc']]

我是这样完成的:

lst = ['a', 'b', 'ab', 'abc']
lsts = []
for num in set(len(i) for i in lst):
    lsts.append([w for w in lst if len(w) == num])

我对这些代码没问题,但我正在努力理解理解。我想使用嵌套理解来做同样的事情,但我不知道该怎么做。

最佳答案

>>> [[w for w in L if len(w) == num] for num in set(len(i) for i in L)]
[['a', 'b'], ['ab'], ['abc']]

此外,itertools 可能会更高效一些。

关于Python:使用嵌套理解将字符串列表按长度拆分为字符串列表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11334450/

相关文章:

python - 将四元数值从 IMU 重置为 X :0, Y :0, Z :0, W:1

php - 在 PHP 中打印没有嵌套循环的模式

python - 如何从列表 Python 创建带有下划线的子集列表

python - python 中具有多个循环和 if 语句的列表理解

python - 将两个整数列表组合成一个字符串列表

python - 设置隐藏 ModelForm 字段 Django 的默认值

python - 在 Python 中编辑多维数组

python - pyinotify.ThreadedNotifier,process_* 未调用

elasticsearch - Elasticsearch : find word parts in nested object

mysql SELECT IN 后跟逗号分隔字段