我有這個名單如何將單詞列表轉換爲一個句子字符串?
[['obytay'], ['ikeslay'], ['ishay'], ['artway']]
,我需要它看起來像
obytay ikeslay ishay artway
有人能幫忙嗎?我嘗試使用join
,但我無法使它工作。
我有這個名單如何將單詞列表轉換爲一個句子字符串?
[['obytay'], ['ikeslay'], ['ishay'], ['artway']]
,我需要它看起來像
obytay ikeslay ishay artway
有人能幫忙嗎?我嘗試使用join
,但我無法使它工作。
你在列表中有一個列表,所以它不按你認爲應該的方式工作。然而你的嘗試是絕對正確的。按照以下步驟操作:
' '.join(word[0] for word in word_list)
其中word_list是上面顯示的列表。
>>> word_list = [['obytay'], ['ikeslay'], ['ishay'], ['artway']]
>>> print ' '.join(word[0] for word in word_list)
obytay ikeslay ishay artway
Tobey likes his wart
非常感謝!我不明白它是如何變成列表的列表。在編碼中,我創建了一個空列表,然後將這些單詞添加到它中。列表中的列表對我來說肯定是複雜的東西 – user3477556
@ user3477556,也許,更好的做法是修改代碼的附加部分,這樣就不會最終解決這個問題,並導致更多的複雜問題。豬拉丁語? :) – sshashank124
在另一個將普通單詞變成明膠的函數中,我也將新的明膠單詞添加到空列表中。我把它全部修好了,'join'函數正常工作:D非常感謝您的幫助! – user3477556
這是一個字符串列表。所以,你需要到連鎖字符串列表,與chain.from_iterable
這樣
from itertools import chain
print " ".join(chain.from_iterable(strings))
# obytay ikeslay ishay artway
這將是有效的,如果我們第一次轉換鏈迭代到一個列表,這樣
print " ".join(list(chain.from_iterable(strings)))
Downvoter,請讓我知道這個答案有什麼問題。 – thefourtheye
我不是downvoter,但可能是因爲他/她認爲解決方案太複雜了。老實說,我不知道。 :P – sshashank124
您還可以使用reduce
。
l = [['obytay'], ['ikeslay'], ['ishay'], ['artway']]
print " ".join(reduce(lambda a, b: a + b, l))
#'obytay ikeslay ishay artway'
4票和數。看起來像一個偉大的問題已經! – devnull
@devnull,哈哈哈。我看到你編輯了你的評論。 :) – sshashank124