python写入文件夹路径到txt文本中遇到Permission denied问题

在使用Python进行文件操作时,博主遇到了一个权限错误,具体表现为尝试写入类文件夹内的文件路径到文本文件时,在写入过程中突然抛出PermissionError。问题出现在尝试打开文件进行追加写入('a'模式)时,而将'a'改为'a+'模式后错误消失。这可能是由于文件在写入过程中被其他进程占用导致的权限问题。
摘要由CSDN通过智能技术生成

具体问题是:写入文件到中途,出现权限错误
我的文件比较多,要写入8000多行,之前两三千行的时候没有报错

文件结构是

全部文件夹
   一类文件夹(8000个文件夹
   二类文件夹(2000个
   三类文件夹(2500个
   四类文件夹(7000个

目的:写入类文件夹内的 文件的路径

import os
dst_path = "D:\\xxx\\xxx\\data\\crop_jpg\\"
# os.listdir(file)会历遍文件夹内的文件并返回一个列表
path_list = os.listdir(dst_path)
# print(path_list)
for class_name in os.listdir(dst_path):
    class_path = os.path.join(dst_path,class_name)
    class_name_txt = str(class_name) + "list.txt"
    for file_name in os.listdir(class_path):
        file_path = os.path.join(class_path,file_name)
        #with open(str(class_name)+"list.txt","a") as f:
        with open(class_name_txt,"a+") as f:
            f.write(str(class_name)+"/"+file_name+".mp4"+"\n")
    f.close()
Traceback (most recent call last):
  File "read2txt.py", line 45, in <module>
    with open(class_name_txt,"a") as f:
PermissionError: [Errno 13] Permission denied: 'penjianlist.txt'

把a改成a+就不报错了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值