代碼的目的是收集詞表的所有字符,我做了以下內容:這個列表理解爲什麼不工作?
wordlist = ['cat','dog','rabbit']
[c for c in word for word in wordlist]
輸出是奇怪:
['r',
'r',
'r',
'a',
'a',
'a',
'b',
'b',
'b',
'b',
'b',
'b',
'i',
'i',
'i',
't',
't',
't']
我知道我可以用做:
[ch for ch in "".join(wordlist)]
或
[word[i] for word in wordlist for i in range(len(word))]
然而,我的第一個建議似乎也是對的,誰能告訴我爲什麼第一個不起作用?
你需要''[c爲單詞中的單詞列表中的單詞]'。它與循環的形成順序以及它們是否嵌套有關。 –
[c爲單詞中的單詞列表] – MMF
我發現這更易讀:'list(「」。join(wordlist))' –