You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python打开并重新保存目录下的所有文件

云端文件防删除:批量重保存CSV/PY/IPYNB文件方案

你的需求核心是通过更新文件修改时间避免被自动删除,无需修改内容,只需打开后原样保存即可。针对不同文件类型,处理方式如下:

处理CSV与PY文件

这类文本文件可直接读取内容后覆盖写入原文件,操作简单且安全:

import glob

# 遍历目标目录下的CSV和PY文件
for fname in glob.glob('data_folder/*'):
    if fname.endswith(('.csv', '.py')):
        # 读取文件内容
        with open(fname, 'r', encoding='utf-8') as f:
            content = f.read()
        # 原样写入覆盖原文件,更新修改时间
        with open(fname, 'w', encoding='utf-8') as f:
            f.write(content)

处理IPYNB文件

Jupyter Notebook是JSON格式文件,用专业库处理更稳妥,避免格式损坏:

import glob
import nbformat

# 遍历目录下的IPYNB文件
for fname in glob.glob('data_folder/*.ipynb'):
    # 读取Notebook内容
    nb = nbformat.read(fname, as_version=4)
    # 原样保存,更新修改时间
    nbformat.write(nb, fname)

如果缺少nbformat库,先执行安装命令:pip install nbformat

合并处理三类文件的完整代码

import glob
import nbformat

def refresh_file(fname):
    if fname.endswith(('.csv', '.py')):
        with open(fname, 'r', encoding='utf-8') as f:
            content = f.read()
        with open(fname, 'w', encoding='utf-8') as f:
            f.write(content)
    elif fname.endswith('.ipynb'):
        nb = nbformat.read(fname, as_version=4)
        nbformat.write(nb, fname)

# 遍历所有目标格式文件
for fname in glob.glob('data_folder/*'):
    if fname.endswith(('.csv', '.py', '.ipynb')):
        refresh_file(fname)

注意事项

  • 建议先在少量测试文件上验证,确保不会损坏原有内容
  • 可设置定时任务(如用schedule库)自动执行,避免手动操作

内容的提问来源于stack exchange,提问作者Vardaan Khanted

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 19:17:02