今天写了一个程序,读取子目录(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的错误的更多相关文章

  1. os.path.isfile()的正确用法(正确用法)

    之前网上查找os.path.isfile( )的使用:发现有些是错误的,主要原因是,传入的参数是相对路径,不是绝对路径. 但是,经过我的实验发现:os.path.isfile( )需要传入的参数是绝对 ...

  2. python os.path.isfile函数

    最近刚开始学习Python,做了个小练习:扫描当前目录及其子目录中的文件,找出文件名中含有指定关键字的文件并打印文件名.思路很简单,如果是文件则判断是否满足条件:如果是目录则进入目录搜索文件,递归. ...

  3. python中由于中文路径引起的os.path.isfile(imgpath) == False问题

    昨天在用python脚本处理文件的时候,遇到了题述问题,明明文件时存在的,但是在用os.path.isfile(imgpath) == False进行判断的时候总是成立,在一开始以为是正反斜杠wind ...

  4. 【Python】os.path.isfile()的使用方法汇总

    方法一: # -*- coding:utf-8 -*- import os import sys from uiautomator import device as d filepath = r'E: ...

  5. arcpy加载mxd文件时,无效的MXD路径,提示assert (os.path.isfile(mxd) or (mxd.lower() == "current")), gp.getIDMessage(89004, "Invalid MXD filename")

    无效的MXD路径,将路径前加‘u’,改为这种: mxdPath = u"C:\\1331\\DB\\Original Files\\dd.mxd" 参考: https://gis. ...

  6. python os.path模块

    os.path.abspath(path) #返回绝对路径 os.path.basename(path) #返回文件名 os.path.commonprefix(list) #返回list(多个路径) ...

  7. os.path 大全

    os.path.abspath(path) #返回绝对路径 os.path.basename(path) #返回一个路径的最后一个组成部分 os.path.commonprefix(list) #返回 ...

  8. Python 中 os.path模板

    os.path.abspath(path) #返回绝对路径 os.path.basename(path) #返回文件名 os.path.commonprefix(list) #返回list(多个路径) ...

  9. python os.walk()和os.path.walk()

    一.os.walk() 函数声明:os.walk(top,topdown=True,onerror=None) (1)参数top表示需要遍历的顶级目录的路径. (2)参数topdown的默认值是“Tr ...

随机推荐

  1. ST-LINK JLINK JTAG SWD接线图

  2. 2286: [Sdoi2011]消耗战

    2286: [Sdoi2011]消耗战 链接 分析 虚树练习题. 构建虚树,在虚树上DP. 跟着gxb学虚-tree... 代码 #include <cstdio> #include &l ...

  3. P2344 奶牛抗议

    P2344 奶牛抗议 题目背景 Generic Cow Protests, 2011 Feb 题目描述 约翰家的N 头奶牛正在排队游行抗议.一些奶牛情绪激动,约翰测算下来,排在第i 位的奶牛的理智度为 ...

  4. 简洁好看的form样式收藏

    本文转载自 http://www.laozuo.org/3495.html 为了方便自己查阅所以搬运过来,如有侵权希望原作者联系我删除不要突然去法院告我呀! 颜色样式啥的都可以根据需求自己调整的,这些 ...

  5. laravel5.5http会话机制

    1.配置文件 config/session.php 大多数是用file驱动,将session保存在storage/framework/sessions,可以考虑使用redis或者memcached 驱 ...

  6. git :.gitigrone文件不生效的解决办法

    真正的原因是.gitignore只能忽略那些尚未被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的.一个简单的解决方法就是先把本地缓存删除(改变成未track状 ...

  7. C++树的建立和遍历

    #include<iostream.h> typedef char TElemtype; typedef struct Btree { TElemtype data; struct Btr ...

  8. 1155 Heap Paths (30 分)(堆+dfs遍历)

    比较简单的一题 遍历左右的时候注意一下 #include<bits/stdc++.h> using namespace std; ; ]; ; vector<int>t; ve ...

  9. 线段树 (区间更新,区间查询) poj http://poj.org/problem?id=3468

    题目链接 #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> # ...

  10. 一个画ROC曲线的封装包

    Draw_ROC_Curves This is a python file which is used for drawing ROC curves -f : assign file name -t ...