如何使用现有 Python 脚本处理多个文件



我有>100个.cwa文件(原始加速度计数据(,并且有一个处理.cwa数据并生成.csv文件的.py程序。 我如何在python中编写一个脚本,该脚本可以使用我的.py处理所有.cwa文件,而无需将文件名单独插入命令行。

我是编程新手,我看过glob.glob和OS.Walk,但不明白如何使用这些处理多个文件。 我想一次读取 1 个 .cwa 文件,使用我的.py处理它,然后移动到下一个 .cwa,直到所有文件都被读取并且有相应数量的 CSV 文件作为输出。 我不想将数据合并到一个文件中。

您可以使用 shell 脚本(这里是 Linux 的 bash 示例(列出目录中的文件并为每个文件调用命令:

find /path/to/cwa/files/ -type f -name "*.cwa" -exec /path/to/script.py {} ;

这个例子假设 script.py 接受一个参数,即 CWA 文件路径,例如script.py /my/cwa/file.cwa

如果你想坚持使用Python,带有os.listdir的for循环可能是最简单的方法。假设您的 CWA 处理代码位于process_cwa()函数中:

import os
CWA_DIR = '/path/to/cwa/files'
def process_cwa(path):
# process CWA file
pass
# process CWA files from CWA_DIR on disk
for file in os.listdir(CWA_DIR):
if file.endswith(".cwa"):
path = os.path.join(CWA_DIR, file)
process_cwa(path)

最新更新