用句子和标签分割python中的行

时间:2017-11-24 05:32:42

标签: python file-handling

  

我有一个带有句子和标签的文件样本。怎么能分成句子和标签?

一部关于一个心疼,漂移的年轻人的非常,非常,非常缓慢,毫无漫无目的的电影。 0

不确定谁更失落 - 扁平人物或观众,其中近一半人走了出去。 0

用黑色和黑色尝试艺术性白色和聪明的相机角度,电影失望 - 变得更加荒谬 - 因为表演很差,情节和线条几乎不存在。 0

很少有音乐或任何可以谈论的东西。 0

输出
句子列表:
['一部关于一个心疼,漂流的年轻人的非常,非常,非常缓慢,没有漫无目的的电影','不确定谁更迷失 - 扁平人物或观众,其中近一半人走了']

相应的标签:
[ '0', '0']

2 个答案:

答案 0 :(得分:1)

假设最后一个"。"(点)之后的数字是标签

对于给定的示例,当存储在文件中时,你的数据.txt'以下代码应生成2个列表sentence_listlabel_list。您可以根据您的要求单独将这些列表中的数据写入文件。

fmov=open('yourdata.txt','r')
sentence_list=[]
label_list=[]
for f in fmov.readlines():
    lineinfo=f.split('.')
    sentenceline=".".join(lineinfo[0:-1])
    sentence_list.append(sentenceline)
    label_list.append(str(lineinfo[-1]).replace('\n',''))
print(sentence_list)
print(label_list) 

OUT:
['A very, very, very slow-moving, aimless movie about a distressed, drifting young man', 'Not sure who was more lost - the flat characters or the audience, nearly half of whom walked out', 'Attempting artiness with black & white and clever camera angles, the movie disappointed - became even more ridiculous - as the acting was poor and the plot and lines almost non-existent', 'Very little music or anything to speak of']
[' 0', ' 0', ' 0', ' 0']

答案 1 :(得分:0)

是' 0'标签?如果它只有一个句子,您可以使用句点作为分隔符来string.split('.')。虽然如果你的句子类似于' Mr。'或者' Mrs.'所以你可能需要添加一些if语句来处理它们。