Python在文本fi中查找感兴趣行的索引

2024-10-01 11:24:56 发布

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

我正在编写一个以文件文本作为输入的代码,它执行以下操作: 它搜索我感兴趣的特定行(在本例中是'InChIKey=HCZNPUHZYPPINM-AWEZNQCLSA-M'),并返回位于我感兴趣的行之前并包含此字符'//'的行的索引+1

这是我的密码

file_info = open('compounds.dat', 'r')
data = {}
line_index = 0
unique_line_index = 0
for line in file_info: 
    if '//' in line:
        #extract line index for lines that contain //
        line_index = [x for x in range(len(content)) if "//" in content[x]]

    elif 'InChIKey=HCZNPUHZYPPINM-AWEZNQCLSA-M' in line:
        # return index of line after //
        unique_line_index = line_index + 1

但是我得到了以下错误:can only concatenate list (not "int") to list。在


Tags: 文件ininfoforindexiflinecontent
1条回答
网友
1楼 · 发布于 2024-10-01 11:24:56

问题是:

line_index = [x for x in range(len(content)) if "//" in content[x]]

尽管您将line_index定义为int,但是您将用这个列表覆盖它,因此错误消息是您不能将int连接到list。在

更新:

要获取包含//的行的索引,请使用以下命令:

^{pr2}$

相关问题 更多 >