关于Python嵌套列表推导的问题
AD稳稳 2017-05-26 07:29:40 最近在学习Python自然语言处理这本书,遇到了一个问题,关于Python中嵌套列表推导的
P140/ 41.将下列嵌套循环重写为嵌套列表推导。
words=['attribution','confabulation','elocution','sequoia','tenacious','unidirectional']
vesquences=set()
for word in words:
vowels=[]
for char in word:
if char in 'aeiou':
vowels.append(char)
vesquences.add(''.join(vowels))
sorted(vesquences)
['aiuio', 'eaiou', 'eouio', 'euoia', 'oauaio', 'uiieioa']
应该目的是将列表中的元音字母抽出重新组成一个集合显示出来,但是我和伙伴做了好久都没有做出来,希望各位大神帮忙看一下,谢谢。
我写的不太对,但是也贴出来给大家看一下,求助= =:
words=['attribution','confabulation','elocution','sequoia','tenacious','unidirectional']
vsequences=set()
vowels=[]
initial_value=0
[[[vowels.append(char) for char in words[i] if char in 'aeiou'] and vsequences.add(''.join(vowels)) for i in range(len(words)) if i!=0 ] ]
print sorted(vsequences)
输出结果是这样的:
['oauaio', 'oauaioeouio', 'oauaioeouioeuoia', 'oauaioeouioeuoiaeaiou', 'oauaioeouioeuoiaeaiouuiieioa']
没有及时清空列表