python os.path.isfile()因参数问题判断错误的解决
目的: 找出路径坐在的所有python文件(.py结尾),返回列表。
代码:
def list_py(path = None): if path == None: path = os.getcwd() return [fname for fname in os.listdir(path) if os.path.isfile(fname) and fname.endswith('.py')
错误:
不传入参数没有问题
>>> list_py() ['cmdtest.py', 'datatest.py', 'excel_combine.py', 'input.py', 'iotest.py', 'load_data_test.py', 'numpy_arraytest.py', 'ooptest.py', 'pandas_test.py', 'str_test.py', 'test.py', 'wordstats.py']
但是传入参数后
>>> list_py('D:\Python\PythonProject\data_mining_with_python') []
返回:[]
一度以为将路径作为参数会出问题,但是在删除列表中if条件后又正常返回。所以显而易见。
解决:
os.path.isfile()
接收的参数是路径+文件名,所以不单单是fname或者path。
而应该用:
os.path.join(path,fname)
作为参数
以上这篇python os.path.isfile()因参数问题判断错误的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
python os.path.isfile 的使用误区详解
下列这几条语句,看出什么问题了不? for file in os.listdir(path): if os.path.isfile(file) and os.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.
-
Python os模块中的isfile()和isdir()函数均返回false问题解决方法
今天在写一个linux下自动备份指定目录下的所有目录的脚本时,遇到了一个问题,由于我是需要备份目录,所以,需要判断扫描的文件是否为目录,当我用os.path.isdir()来判断的时候,发现所有文件均返回false,刚开始以为是系统兼容性问题,进一步测试,发现用os.path.isfile(),这些文件还是返回false,这肯定就是程序写的有问题了,代码如下: #!/usr/bin/env python # a python script to auto backup a directory's
-
python os.path.isfile()因参数问题判断错误的解决
目的: 找出路径坐在的所有python文件(.py结尾),返回列表. 代码: def list_py(path = None): if path == None: path = os.getcwd() return [fname for fname in os.listdir(path) if os.path.isfile(fname) and fname.endswith('.py') 错误: 不传入参数没有问题 >>> list_py() ['cmdtest.py', 'datate
-
详解python os.path.exists判断文件或文件夹是否存在
os即operating system(操作系统),Python 的 os 模块封装了常见的文件和目录操作. os.path模块主要用于文件的属性获取,exists是"存在"的意思,所以顾名思义,os.path.exists()就是判断括号里的文件是否存在的意思,括号内的可以是文件路径. 举个栗子: import os #判断文件夹是否存在 dir = os.path.exists('C:\\Users\\Desktop') print('dir:', dir) #判断文件是否存在 f
-
python os.path模块常用方法实例详解
os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法.更多的方法可以去查看官方文档:http://docs.python.org/library/os.path.html 1.os.path.abspath(path) 返回path规范化的绝对路径. >>> os.path.abspath('test.csv') 'C:\\Python25\\test.csv' >>> os.path.abspath('c:\\test.csv') '
-
python os.path模块使用方法介绍
os.path模块是os模块根据系统类型从另一个模块导入的,并非由os模块实现 1.os.path.abspath(相对路径)-----返回对应路径的绝对路径 os.path.abspath(".") import os.path print(os.path.abspath(".")) E:\python练习 上一层路径“..” import os.path print(os.path.abspath("..")) E:\ 2.os.path.a
-
pip安装python库时报Failed building wheel for xxx错误的解决方法
目录 一.问题描述 二.解决办法 1. 下载并安装对应的 .whl 文件 2. 安装 .whl 文件 总结 一.问题描述 如题,在使用pip install xxx的方法安装python库,或者是基于python的软件时,报错“ERROR: Failed building wheel for xxx(某个库)” 这个报错信息表明缺少了相应的 .whl 文件 二.解决办法 1. 下载并安装对应的 .whl 文件 下载地址:https://www.lfd.uci.edu/~gohlke/python
-
Python os.path.exists()函数总是返回false的解决方案
如下面所示,如果我们用file的readline或readlines,在每一行后面都有一个\n回车符 直接os.path.exists(readline)时总会返回false >>> from os.path import exists >>> exists('dog.png') True >>> exists('dog.png\n') False 使用item.strip('\n') #前面的item为我定义的变量 去掉后再传递给os.path.ex
-
Python对文件和目录进行操作的方法(file对象/os/os.path/shutil 模块)
使用Python过程中,经常需要对文件和目录进行操作.所有file类/os/os.path/shutil模块时每个Python程序员必须学习的. 下面通过两段code来对其进行学习. 1. 学习 file对象 2. 学习os/os.path/shutil模块 1.file对象学习: 项目中需要从文件中读取配置参数,python可以从Json,xml等文件中读取数据,然后转换成Python的内容数据结构. 下面以Json文件为例,实现从Json文件中获取配置参数. code运行环境:python2
-
Python常用模块os.path之文件及路径操作方法
以下是 os.path 模块的几种常用方法: 方法 说明 os.path.abspath(path) 返回绝对路径 os.path.basename(path) 返回文件名 os.path.commonprefix(list) 返回list(多个路径)中,所有path共有的最长的路径 os.path.dirname(path) 返回文件路径 os.path.exists(path) 如果路径 path 存在,返回 True:如果路径 path 不存在,返回 False. os.path.lexi
-
python 标准库原理与用法详解之os.path篇
os中的path 查看源码会看到,在os.py中有这样几行 if 'posix' in _names: name = 'posix' linesep = '\n' from posix import * #省略若干代码 elif 'nt' in _names: from nt import * try: from nt import _exit __all__.append('_exit') except ImportError: pass import ntpath as path #...
随机推荐
- Seajs是什么及sea.js 由来,特点以及优势
- Jquery实现图片左右自动滚动示例
- PHP处理JSON字符串key缺少双引号的解决方法
- Vue.js父与子组件之间传参示例
- Oracle 11g Release (11.1) 索引底层的数据结构
- JS中setTimeout的巧妙用法前端函数节流
- JavaScript实现网页对象拖放功能的方法
- Asp.net获取当前目录的方法小结
- php实现水仙花数的4个示例分享
- Android DragVideo实现播放视频时任意拖拽的方法
- 使用vue.js写一个tab选项卡效果
- 页面布局黄金比例[图片]
- JavaScript截断字符串的方法
- [基础知识]Linux新手系列之四
- Android Studio启动报错Java 1.8 or later is required的解决方法
- php中让上传的文件大小在上传前就受限制的两种解决方法
- jquery表单提交带错误信息提示效果
- linux top命令详解与输出结果说明
- CentOS7挂载新数据盘的完整步骤
- 简单了解java自定义和自然排序