如何将csv文件写入特定的文件夹

时间:2019-03-01 12:17:29

标签: python csv directory

我正在尝试将多个.csv文件写入一个特定目录

这是我的代码

with open(f+'.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)

    writer.writerow(["index", "B", "G", "R"])

    for row in rows:
        writer.writerow(row)

    writer.writerow(["Mean", mean_b/total_b, mean_g/total_g, mean_r/total_r])
    writer.writerow("STD", np.sqrt(var_b/total_b), np.sqrt(var_g/total_g), np.sqrt(var_r/total_r))

我已将csv文件创建到与.py文件相同的目录中 但是我想创建一个目录并在其中创建我的csv文件

我知道我需要os.makedirs()函数

但是我不知道我是否必须先创建目录并指定csv文件的路径,或者我只是将目录名放入open()函数

请帮助我

3 个答案:

答案 0 :(得分:0)

我只会创建目录,但目录存在错误

try:
   os.mkdir("./CSV")
except OSError as e:
   print("Directory exists")

with open("./CSV/" + f + ".csv", newline="") as csvfile:
   [...]

答案 1 :(得分:0)

您可以在open语句

之前添加对目录的检查。
dir_path = 'folder_to_save_csv_file_in'
if not os.path.isdir(dir_path):
    os.makedirs(dir_path)

with open('{file_path}.csv'.format(file_path=os.path.join(dir_path, file_name), 'w+') as csv_file:
    ....

答案 2 :(得分:0)

我建议使用pathlib模块而不是使用os。 您可以使用以下方式创建目录:

path = Path('path/to/dir')
path.mkdir(parents=True)

创建目录及其所有缺少的父目录。 完成此操作后,您可以使用

在新目录中创建文件
fpath = (path / 'filename').with_suffix('.csv')
with fpath.open(mode='w+') as csvfile:
    # your csv writer code