zoukankan      html  css  js  c++  java
  • 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(',', '	')
                        icount = icount + 1
                        ftarget.write(line)
                    ftarget.close()
                    print('处理完毕文件:{};总计{}行'.format(item, icount))
    
        except Exception as e:
            print('出错啦,错误信息是:{}'.format(traceback.format_exc()))
  • 相关阅读:
    SQL操作符的优化
    Oracle 模糊查询 优化
    Mysql中的语句优化
    SQL优化
    Pro Git读书笔记
    前端工程化
    前端工程化
    前端工程化
    前端工程化
    前端工程化
  • 原文地址:https://www.cnblogs.com/aomi/p/7001081.html
Copyright © 2011-2022 走看看