Python标准库os.path包、glob包使用实例


Posted in Python onNovember 25, 2014

os.path包

os.path包主要用于处理字符串路径,比如'/home/zikong/doc/file.doc',提取出有用的信息。

import os.path

path = '/home/zikong/doc/file.doc'
print(os.path.basename(path))    # 查询路径中包含的文件名

print(os.path.dirname(path))     # 查询路径中包含的目录
info = os.path.split(path)       # 将路径分割成文件名和目录两个部分,放在一个表中返回

path2 = os.path.join('\', 'home', 'zikong', 'doc', 'file.doc')  #使用目录名和文件名构成一个路径字符串
p_list = [path, path2]

print(os.path.commonprefix(p_list))    # 查询多个路径的共同部分
os.path.normpath(path) # 去除路径path中的冗余。比如'/home/vamei/../.'被转化为'/home'

#os.path还可以查询文件的相关信息(metadata)。文件的相关信息不存储在文件内部,而是由操作系统

#维护的,关于文件的一些信息(比如文件类型,大小,修改时间)。
import os.path 

path = '/home/vamei/doc/file.txt'
print(os.path.exists(path))    # 查询文件是否存在
print(os.path.getsize(path))   # 查询文件大小

print(os.path.getatime(path))  # 查询文件上一次读取的时间

print(os.path.getmtime(path))  # 查询文件上一次修改的时间
print(os.path.isfile(path))    # 路径是否指向常规文件

print(os.path.isdir(path))     # 路径是否指向目录文件

glob包

glob是python自己带的一个文件操作相关模块,内容也不多,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,而且也 支持通配符,,?,[]这三个通配符,代表0个或多个字符,?代表一个字符,[]匹配指定范围内的字符,如[0-9]匹配数字。

glob方法: 返回所有匹配的文件路径列表,该方法需要一个参数用来指定匹配的路径字符串(本字符串可以为绝对路径也可以为相对路径),比如:

import glob

glob.glob("/home/zikong/doc/*.doc")

/home/zikong/doc/file1.doc /home/zikong/doc/file2.doc

例子

综合利用两个包写的一个类似于linux下的ls函数:

#coding = utf8

import glob

import os.path

path = '/Users/zikong/Pictures'

def ls(path):

        #codinf = utf8

        print "--name--   --type--  --size--  --atime--  --mtime-- "

        path = path + '/*'

        filelist = glob.glob(path)

        for filepath in filelist:

                out = '%s  %s  %s  %s  %s'%(filepath.split('/')[4] ,os.path.isfile(filepath) ,os.path.getsize(filepath) ,os.path.getatime(filepath) ,os.path.getmtime(filepath))

                print out
ls(path)

注意

#coding=utf

是为了让python能够显示中文

Python 相关文章推荐
python实现类的静态变量用法实例
May 08 Python
浅谈利用numpy对矩阵进行归一化处理的方法
Jul 11 Python
Linux CentOS Python开发环境搭建教程
Nov 28 Python
在Pycharm中修改文件默认打开方式的方法
Jan 17 Python
Flask框架工厂函数用法实例分析
May 25 Python
python使用PIL和matplotlib获取图片像素点并合并解析
Sep 10 Python
使用IPython或Spyder将省略号表示的内容完整输出
Apr 20 Python
在keras中实现查看其训练loss值
Jun 16 Python
如何表示python中的相对路径
Jul 08 Python
python -v 报错问题的解决方法
Sep 15 Python
python 批量压缩图片的脚本
Jun 02 Python
Python Pandas pandas.read_sql_query函数实例用法分析
Jun 21 Python
PHP魔术方法__ISSET、__UNSET使用实例
Nov 25 #Python
Python标准库之多进程(multiprocessing包)介绍
Nov 25 #Python
Python标准库之随机数 (math包、random包)介绍
Nov 25 #Python
Python标准库之循环器(itertools)介绍
Nov 25 #Python
Python标准库之sqlite3使用实例
Nov 25 #Python
Python标准库内置函数complex介绍
Nov 25 #Python
Python XML RPC服务器端和客户端实例
Nov 22 #Python
You might like
使用CodeIgniter的类库做图片上传
2014/06/12 PHP
php通过分类列表产生分类树数组的方法
2015/04/20 PHP
使用JS操作页面表格,元素的一些技巧
2007/02/02 Javascript
javascript定时器完整实例
2015/02/10 Javascript
javascript常用经典算法实例详解
2015/11/25 Javascript
js跨浏览器的事件侦听器和事件对象的使用方法
2015/12/17 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
JavaScript闭包实例详解
2016/06/03 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
2017/04/25 Javascript
微信小程序项目实践之验证码倒计时功能
2018/07/18 Javascript
Vue的watch和computed方法的使用及区别介绍
2018/09/06 Javascript
nodejs中函数的调用实例详解
2018/10/31 NodeJs
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
函数式编程入门实践(一)
2019/04/20 Javascript
微信小程序传值以及获取值方法的详解
2019/04/29 Javascript
ionic4+angular7+cordova上传图片功能的实例代码
2019/06/19 Javascript
跟老齐学Python之深入变量和引用对象
2014/09/24 Python
使用 Python 实现微信群友统计器的思路详解
2018/09/26 Python
Django缓存系统实现过程解析
2019/08/02 Python
TensorFlow获取加载模型中的全部张量名称代码
2020/02/11 Python
scrapy中如何设置应用cookies的方法(3种)
2020/09/22 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
2021/02/02 Python
css3实现input输入框颜色渐变发光效果代码
2014/04/02 HTML / CSS
大专学生推荐信范文
2013/11/19 职场文书
商超业务员岗位职责
2014/03/12 职场文书
我的老师教学反思
2014/05/01 职场文书
2014年幼儿园国庆主题活动方案
2014/09/16 职场文书
党员个人对照检查材料
2014/10/01 职场文书
学生抄作业检讨书(2篇)
2014/10/17 职场文书
市场营销计划书
2015/01/17 职场文书
2015年超市工作总结范文
2015/05/26 职场文书
纪委立案决定书
2015/06/24 职场文书
2015年暑期见闻
2015/07/14 职场文书
建筑工程挂靠协议书
2016/03/23 职场文书
javaScript Array api梳理
2021/03/31 Javascript