2013-12-09 141 views
-2

我有一個單詞列表,當它們組合形成一個句子時。我想將這個列表寫入一個文本文件,但是,當前列表會垂直輸出。從單詞列表中將句子寫入文本文件 - python

例如:

WORD_LIST = [ 「的」, 「冬天」, 「是」, 「美麗」]

目前輸出...

the 
winter 
is 
beautiful 

而我想這是

the winter is beautiful. 

我的代碼:

def WriteToTextfile(list_to_write): 
    new_writefile = open("text.txt","w") 
    for k in list_to_write: 
     new_writefile.write("%s\n" % k) 
    new_writefile.close() 

回答

3

只要加入這樣的話,然後寫

new_writefile.write(" ".join(list_to_write)) 

而且總是用with,當您使用文件

with open("text.txt", "w") as new_writefile: 
    new_writefile.write(" ".join(list_to_write)) 
+0

好,但文本文件仍然只包含1​​號線。我希望它 包含多行,其中每行有9-10個單詞。因爲否則python沒有正確讀取它。 – user3083245

+0

@ user3083245我認爲這必須是一個單獨的問題:) – thefourtheye

1
def WriteToTextfile(list_to_write): 
    with open('text.txt', 'wb') as fp: 
     fp.write('%s.' % (' '.join(list_to_write),)) 
3

你被明確加上 「\ n」字符,只是刪除它

def WriteToTextfile(list_to_write): 
    new_writefile = open("text.txt","w") 
    for k in list_to_write: 
     new_writefile.write("%s " % k) 
    new_writefile.close() 
2

加入列表,你把它寫之前,文件像這樣:

" ".join(list_to_write 

,還可以使用with語句這樣寫:

with open("text.txt","w") as new_writefile: