问题描述
由于在数据预处理中遇到了一些问题,在网上查找资料大多是关于用python截取txt文件中两个特殊字符之间的整个段落,但是我需要截取段落之间有关键字HUMAN的段落,所以写了如下脚本。
dd = open("result.txt", 'a')
d = open("test.txt", 'r')
wflag = False #设置bool值
newline = []
for line in d:
if ">" in line: # 遇到>时,说明已经到了新的区域,写标记置否
wflag = False
if ">" in line and "HUMAN" in line: # 遇到>,且有HUMAN时,设置写标记为Ture
wflag = True
# continue #如果要舍弃作判断的那一行,则contine进行下一轮循环
if wflag == True:
K = list(line)
for i in K: # 写入需要内容
newline.append(i)
strlist = "".join(newline) # 合并列表元素
newlines = str(strlist) # list转化成str
dd.write(newlines)
d.close()
dd.close()
结果:
test文件(这里我随意写了一个文件包含我所需要的条件):
>123HUMAN...
wdewdeqw
>djwdefocl;LCMKDNVC
duqwudie
cswwwedwde
>CEUWQLF_HUMAN
dwqdwefc
xsdefd
>12defew
result文件
截取到包含我要的关键字HUMAN的段落。
参考文章:
(15条消息) 提取TXT文本中指定内容——python_MENG_痴痴的博客-CSDN博客_python提取txt中指定内容