首页 > 解决方案 > 拆分列表 (?)

问题描述

我一直在寻找一段时间,我想我可能构建错误的块,但我希望有一个简单的解决方案。我需要分解一个列表,而我能想到的每个解决方案都失败了,(知识有限)。我的代码旨在查找文本中的特定单词并提取文本所在的部分,我还添加了找到文本的文件名。但是,这都是在同一个列表中!


for filename in os.scandir(directory):
    if filename.path.endswith(".txt"):
        f = open(filename, encoding = 'utf-8')
        lines = f.readlines()
        for line in lines:
            if pattern.search(line) != None:
                list.append((filename.name, line.rstrip('\n')))
                
        continue
    else:
        continue

当它打印出来时,它看起来像:

20 亿资本支出,并将支持 Ameren Missouri 遵守密苏里州可再生能源标准。Ameren Missouri 和开发商继续监控对每个项目进度的影响。迄今为止,两家开发商都没有向 Ameren Missouri 报告这些项目将不会在 2020 年完成。Ameren Missouri 预计到 2020 年底将投入使用高达 400 兆瓦的项目。然而,此时,由于对于制造、运输和其他供应链问题,根据 Ameren Missouri 与开发商的讨论,Ameren Missouri 预计该高达 300 兆瓦项目的一部分(投资约 1 亿美元)可以投入使用2021 年第一季度。')]

那么,有没有办法可以将其拆分,以便文件名位于单独的列表中?我想用 -

import pandas
df = pandas.DataFrame(data={"col1": filename, "col2": list})
df.to_csv("./SECParse.csv", sep=',',index=False)

但到目前为止,我无法分解我创建的这个列表。

有什么帮助吗?

标签: pythonpandas

解决方案


由于您已经在表单中有一个元组列表(filename,text),我认为您可以调用

pd.DataFrame(ls,columns=['filename','text'])

您从循环ls中生成的列表在哪里。for

输出应如下所示:

    filename                                        text
0   AEE_0000018654_10Q_20200331_Item1A_excerpt.txt  In 2019, Ameren Missouri entered into a build-...
1   AEE_0000018654_10Q_20200331_Item2_excerpt.txt   an up-to 400-megawatt wind generation facility...

推荐阅读