我試圖以[[(貓),(貓,with),(with,fur)] [(the,dog)]形式列出列表, (狗,有),(帶,球)......等來自與線句子的文本文件,如:Python中的列表(使用NLTK)
皮草\ n 狗與球貓\ n
我遇到的問題是,當我正在讀取文件中的行,逐個字,製作元組(變量標籤)和創建最終列表(變量連接)時,空的實例連接到0.呃,實際上不是0 b旦是列表中顯示,例如[[] [],[]]
這是的那部分程序代碼: 張開( 'corpus.txt', 'R')爲f:
with open('corpus.txt', 'r') as f:
for line in f:
cnt = 0
sa = nltk.word_tokenize(line)
label[:] = []
for i in sa:
words.append(i)
if cnt>0:
try: label +=[(prev , i)]
except: NameError
prev = i
cnt = cnt + 1
if label != []:
connection += [label]
print connection
我希望有人能夠理解我的問題,因爲這會讓我發瘋,而且我的時間不夠用了。我只想知道我在這裏做錯了什麼,所以我可以在每個循環中更新我的連接列表,而不會丟失之前保存的內容。
感謝您的幫助
難道是安全地說,你有句子,每個句子被表示爲一個單詞列表的列表,你想要在每個句子中列出兩個bigrams? – inspectorG4dget
準確地說,不知道這個詞bigram是如此,這很容易說:) PS:其實我想要所有文件的二元論,但在'子列表'中分開[[(a1,a2),(a2,a3) )],[(b1,b2),(b2,b3)] –