python - 使用 Pandas 和 Regex 将文件名写入 csv

标签 python regex python-2.7 pandas

如何使用 Pandas 将文件名列表写入 csv 文件中的列?我还希望正则表达式仅保留文件名的一部分。

使用 csv 模块,我这样做了:

import os
import re
import csv

with open("file.csv","w") as write_csv:
    fieldnames = ["col1", "col2"]
    wr_header = csv.DictWriter(write_csv, fieldnames = fieldnames)
    wr_header.writeheader()
    wr_data = csv.writer(write_csv, delimiter = "\n")
    folder = os.listdir("/User/folder")
    for filename in folder:
        filesnippet = re.findall("snippet_(.{12})", filename)
        wr_data.writerow(filesnippet)

最佳答案

Pandas 数据框可以将列表作为构造函数。真正的问题是你在哪里进行正则表达式工作。在这里,我使用 pandas 字符串方法 extract 返回每行捕获的组。

pd.Series(os.listdir(directory)).str.extract(regex).to_csv(filename)

参见http://pandas.pydata.org/pandas-docs/version/0.15.2/generated/pandas.core.strings.StringMethods.extract.html

关于python - 使用 Pandas 和 Regex 将文件名写入 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30424161/

相关文章:

python - 用python计算平均值

python - 将每 3 行连接在一起 Python

python - 如何在Python中将 "ls-ltr | grep *.txt | cut -1 "的输出重定向到列表

Python 将多个文件模块中的所有内容导入命名空间

Javascript 正则表达式 - 匹配域和任何可能的子域

Java正则表达式截断字符串

python 如何通过与变量名匹配的模式对列表进行排序

python - 获取文件复制到文件夹的时间(Python)

python - 使用 z3 证明 bool /算术公式的恒等性

python - Python 中用于 TR 的正则表达式