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 13 Python
Python的Flask开发框架简单上手笔记
Nov 16 Python
对python使用http、https代理的实例讲解
May 07 Python
解决python中使用plot画图,图不显示的问题
Jul 04 Python
pycharm 在windows上编辑代码用linux执行配置的方法
Oct 27 Python
python3+selenium实现126邮箱登陆并发送邮件功能
Jan 23 Python
python @classmethod 的使用场合详解
Aug 23 Python
使用虚拟环境打包python为exe 文件的方法
Aug 29 Python
Python正则表达式高级使用方法汇总
Jun 18 Python
python virtualenv虚拟环境配置与使用教程详解
Jul 13 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
Python利用zhdate模块实现农历日期处理
Mar 31 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
php面向对象全攻略 (七) 继承性
2009/09/30 PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
2011/07/03 PHP
AppBaseJs 类库 网上常用的javascript函数及其他js类库写的
2010/03/04 Javascript
js保存当前路径(cookies记录)
2010/12/14 Javascript
JavaScript高级程序设计 事件学习笔记
2011/09/10 Javascript
event.X和event.clientX的区别分析
2011/10/06 Javascript
理解JavaScript的prototype属性
2012/02/11 Javascript
js点击更换背景颜色或图片的实例代码
2013/06/25 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
使用jquery获取url以及jquery获取url参数的实现方法
2016/05/25 Javascript
js实现常用排序算法
2016/08/09 Javascript
require、backbone等重构手机图片查看器
2016/11/17 Javascript
基于Marquee.js插件实现的跑马灯效果示例
2017/01/25 Javascript
js实现图片左右滚动效果
2017/02/27 Javascript
详解Vue.js入门环境搭建
2017/03/17 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
Node.js 使用AngularJS的方法示例
2018/05/11 Javascript
Vue v-for中的 input 或 select的值发生改变时触发事件操作
2020/08/31 Javascript
[44:43]完美世界DOTA2联赛决赛日 FTD vs GXR 第一场 11.08
2020/11/11 DOTA
Python中查看文件名和文件路径
2017/03/31 Python
python3如何将docx转换成pdf文件
2018/03/23 Python
100行Python代码实现每天不同时间段定时给女友发消息
2019/09/27 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
2019/12/19 Python
Keras 加载已经训练好的模型进行预测操作
2020/06/17 Python
python全栈开发语法总结
2020/11/22 Python
CSS3中border-radius属性设定圆角的使用技巧
2016/05/10 HTML / CSS
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
英国大码女性时装零售商:Evans
2018/08/29 全球购物
免税水晶:Duty Free Crystal
2019/05/13 全球购物
美国摩托车头盔、零件、齿轮及配件商店:Cycle Gear
2019/06/12 全球购物
Contém1g官网:巴西彩妆品牌
2020/01/17 全球购物
农田水利实习自我鉴定
2013/09/19 职场文书
运动会通讯稿300字
2014/02/02 职场文书
优秀食品类广告词
2014/03/19 职场文书
实操Python爬取觅知网素材图片示例
2021/11/27 Python
微信告警的zabbix监控系统 监控整个NGINX集群
2022/04/18 Servers