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

如何在Python当前工作目录自动建文件夹保存DataFrame为CSV文件

实现方案

你可以通过动态获取当前运行环境的路径实现跨设备无修改运行,下面提供两种常用实现方案:

方案1:基于os模块(兼容所有Python版本)

直接用os.getcwd()获取Python当前工作目录的绝对路径,再拼接你预设的存储文件夹名即可,无需写死固定路径:

import os
import pandas as pd

# 动态获取当前工作目录
current_work_dir = os.getcwd()
# 自定义存储文件夹名,可根据需求修改,不需要写绝对路径
save_dir = "exported_dataframes"
# 拼接得到完整的存储目录路径
outdir = os.path.join(current_work_dir, save_dir)

# 目录不存在则创建
if not os.path.exists(outdir):
    os.mkdir(outdir)

# 拼接csv文件路径导出
outname = 'name.csv'
fullname = os.path.join(outdir, outname)
df.to_csv(fullname)

方案2:基于pathlib模块(推荐,Python3.4+支持)

pathlib是Python官方推荐的路径处理库,自动适配不同操作系统的路径分隔符,代码更简洁,还支持直接判断目录存在性、递归创建目录:

from pathlib import Path
import pandas as pd

# 直接基于当前工作目录创建存储目录对象,可修改exported_dataframes为你想要的文件夹名
outdir = Path.cwd() / "exported_dataframes"
# exist_ok=True表示目录已存在也不会报错,parents=True可支持创建多级嵌套目录
outdir.mkdir(exist_ok=True, parents=True)

# 直接拼接文件名导出
df.to_csv(outdir / "name.csv")

补充说明

如果你希望文件始终存储在脚本文件所在的目录,而不是运行脚本时的工作目录(比如你在其他目录下调用执行该脚本的场景),可以将路径获取逻辑替换为基于__file__变量:

  • os模块版本:current_work_dir = os.path.dirname(os.path.abspath(__file__))
  • pathlib版本:outdir = Path(__file__).parent / "exported_dataframes"

两种方案都不需要手动修改路径参数,在Windows、macOS、Linux设备上都可以直接运行。


内容的提问来源于stack exchange,提问作者Michael J. Erickson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 08:24:03