大型文本文件中变量值的查找,不使用split()函数

2024-09-21 01:09:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个很大的文本文件,文件大小为很多GB。现在我想看看一些字符串(保存在变量中)是否在我的大文件中。我发现函数split()将占用大量内存,因此我正在寻找一种新方法

我的代码如下所示:

    save_file=open('path_here' + datetime.now().strftime("%d-%m-%Y_%H-%M")+'_output_all.fasta', 'w+') 

    ...

    inter_res = "(9|D)(12|S)"
    if inter_res in save_file:
              print("yeah")
    else:
              print("oh no")

在这种情况下,我知道inter_res中的信息在我的大文件中

大文件如下所示(几行):

>nxp:NX_A0A075B6N4-1_(54|H)_positions: 51-76 MYWHQQDPGMELHLIHYSYGVNSTEK
>nxp:NX_A0A075B6N4-1_(54|H)(57|V)_positions: 51-76 MYWHQQVPGMELHLIHYSYGVNSTEK
>nxp:NX_A0A075B6N4-1_(54|H)(57|V)(59|E)_positions: 51-76 MYWHQQVPEMELHLIHYSYGVNSTEK
>nxp:NX_A0A075B6N4-1_(54|H)(57|V)(59|E)(59|R)_positions: 51-76 MYWHQQVPRMELHLIHYSYGVNSTEK
>nxp:NX_A0A075B6N4-1_(54|H)(57|V)(59|E)(59|R)(64|F)_positions: 51-76 MYWHQQVPRMELHFIHYSYGVNSTEK
>nxp:NX_A0A075B6N4-1_(54|H)(57|V)(59|E)(59|R)(64|F)(65|S)_positions: 51-76 MYWHQQVPRMELHFSHYSYGVNSTEK
>nxp:NX_A0A075B6N4-1_(54|H)(57|V)(59|E)(59|R)(64|F)(65|S)(65|T)_positions:
51-76 MYWHQQVPRMELHFTHYSYGVNSTEK

有人能给我一个方法来找到我的变量的值吗?谢谢


Tags: 文件方法函数字符串saveresfileprint

热门问题