当前位置:  开发笔记 > 编程语言 > 正文

全面列表中的两个for循环

如何解决《全面列表中的两个for循环》经验,为你挑选了2个好方法。



1> mgilson..:

列表推导以相同的方式嵌套循环.因此,最外层的循环位于最内层循环之前.

>>> x = 'green apple'
>>> [c for word in x.split() for c in word]
['g', 'r', 'e', 'e', 'n', 'a', 'p', 'p', 'l', 'e']

我通常不使用嵌套列表推导,因为我发现我并不总是记住顺序,但我知道有些人确实使用它们,因此能够记住它们如何嵌套是有用的.

在这种情况下,我通常更喜欢使用itertools.chain:

import itertools
print list(itertools.chain.from_iterable(x.split()))



2> vks..:
x = 'green apple'
print [i for i in x if i !=" "]

你可以直接这样做.

输出:['g', 'r', 'e', 'e', 'n', 'a', 'p', 'p', 'l', 'e']

要么

import re
x = 'green apple'
print re.findall("\S",x)

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有