尝试使用.insert()插入行时的重复值

时间:2018-11-09 23:11:34

标签: python python-3.x

我有一个txt文件,正在尝试从中创建列表。 txt文件具有3列制表符,分别是索引,单词,标记)。

txt文件示例:

1   i   PRP
2   want    VBP
3   to  TO
4   go  VB

我想做的是添加句子标记的开头和结尾(<s>开头,</s>结尾)。

我的代码如下:

trainfile=open("/Users/Desktop/training.txt").read().split('\n')
from collections import Counter, defaultdict

trainlines=[]

for line in trainfile:
    trainlines.append(line)

indexlist=[]
wordlist=[]
taglist=[]

word_tag_counts = defaultdict(Counter)
for line in trainlines:
    if not line.strip():
        continue
    index, word, tags = line.split()
    word_tag_counts[word.lower()][tags] += 1
    indexlist.append(index)
    if index == "1":
        indexlist.insert(0, '0')
        wordlist.insert(0, '<s>')
        taglist.insert(0, '<s>')
    else:
        indexlist.append(index)
        wordlist.append(word)
        taglist.append(tags)
        if word == '.':
            taglist.append('</s>')
            wordlist.append('</s>')
        else:
            continue

我遇到的问题是索引列表的结果是:

['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0',...]

单词列表和标签列表是相同的问题

['<s>', '<s>', '<s>', '<s>', '<s>', '<s>', '<s>', '<s>', '<s>',...]

为什么插入的属性是我整个列表中唯一显示的内容?

我想要的最终结果是:

indexlist: [0, 1, 2, 3, 4, 5, 6, 0, 1, 2...]
wordlist: [<s>, i, want, to, go, home, </s>, <s>, ...]

0 个答案:

没有答案