os.path.isfile的错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了os.path.isfile的错误相关的知识,希望对你有一定的参考价值。
今天写了一个程序,读取子目录(source)下的所有文件,然后转换。
程序一部分代码如下:
def DtoTab(dsrc, dtarget): try: for item in os.listdir(dsrc): if os.path.isfile(item): print(‘ok‘)
然后发现,找不到文件。
最后发现,item读取出来的额,只是文件名,而isfile判断的时候,就在py的workdir下面寻找,所以,失败。修改如下:
def DtoTab(dsrc, dtarget): try: for item in os.listdir(dsrc): fullfilename=os.path.join(dsrc,item) if os.path.isfile(fullfilename) and item.endswith(‘.txt‘): print(‘开始处理文件:{}‘.format(item)) dfilename = os.path.join(dtarget,item) ftarget = codecs.open(dfilename, ‘w‘, encoding=‘utf-8‘) icount = 0 for line in open(fullfilename, encoding=‘utf8‘): line = line.replace(‘,‘, ‘\t‘) icount = icount + 1 ftarget.write(line) ftarget.close() print(‘处理完毕文件:{};总计{}行‘.format(item, icount)) except Exception as e: print(‘出错啦,错误信息是:{}‘.format(traceback.format_exc()))
以上是关于os.path.isfile的错误的主要内容,如果未能解决你的问题,请参考以下文章
os.path.isfile() 为 linux smb 网络驱动器上的文件返回 false
在 python 中检查 os.path.isfile(filename) 是不是区分大小写
python:如何在(路径)列表上使用 os.path.isfile()? [复制]