python os.path.isfile 的使用误区详解
下列这几条语句,看出什么问题了不?
forfileinos.listdir(path): ifos.path.isfile(file)andos.path.splitext(file)[1]=='.txt': #打开txt文件,并提取数据
冥思苦想,没错啊,为啥os.path.isfile(file)返回的就是false呢。
>>>os.listdir(path) ['cg.A.1.txt','cg.A.128.txt','cg.A.16.txt','cg.A.2.txt','cg.A.256.txt','cg. A.32.txt','cg.A.4.txt','cg.A.512.txt','cg.A.64.txt','cg.A.8.txt','cg.B.1.tx t','cg.B.128.txt','cg.B.16.txt','cg.B.2.txt','cg.B.256.txt','cg.B.32.txt', 'cg.B.4.txt','cg.B.512.txt','cg.B.64.txt','cg.B.8.txt','cg.C.1.txt','cg.C.1 28.txt','cg.C.16.txt','cg.C.2.txt','cg.C.256.txt','cg.C.32.txt','cg.C.4.txt ','cg.C.512.txt','cg.C.64.txt','cg.C.8.txt','cg.D.128.txt','cg.D.16.txt',' cg.D.256.txt','cg.D.32.txt','cg.D.512.txt','cg.D.64.txt'] >>>files=os.listdir(path) >>>os.path.isfile(files[1]) False
试验了多次,仍然是False,我去,什么鬼.....
开始Google,看到一些目录操作,无果....
遂查看python自带帮助,终于找到了答案,泪奔....
os.path.isfile(path) ReturnTrueifpathisanexistingregularfile.Thisfollowssymboliclinks,sobothislink()andisfile()canbetrueforthesamepath.
注意:path是路径.....
而我传的是一个文件名.
解决方法就是:
>>>os.path.isfile(os.path.join(path,files[1])) True
搞定!
以上这篇pythonos.path.isfile的使用误区详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。