Python 文件操作技巧(File operation) 实例代码分析


Posted in Python onAugust 11, 2008

常用的module是 os ,os.path 和shutil,所以要先引入他们.

python遍历文件夹和文件
这个也许是最常用的功能,如下:

import os  
import os.path  rootdir = "D:\\programmer\\training"  
for parent, dirnames, filenames in os.walk(rootdir):  
    #case 1:  
    for dirname in dirnames:  
        print "parent is:" + parent  
        print "dirname is:" + dirname  
    #case 2  
    for filename in filenames:  
        print "parent is:" + parent  
        print "filename with full path :" + os.path.join(parent, filename) 

解释说明:

1.os.walk返回一个三元组.其中dirnames是所有文件夹名字(不包含路径),filenames是所有文件的名字(不包含路径).parent表示父目录.
2.case1 演示了如何遍历所有目录.
3.case2 演示了如何遍历所有文件.
4.os.path.join(dirname,filename) : 将形如"/a/b/c"和"d.java"变成/a/b/c/d.java".

perl分割路径和文件名
常用函数有三种:分隔路径,找出文件名.找出盘符(windows系统),找出文件的扩展名.

import os.path  spath="D:/download/flight/flighthtml.txt"  
# case 1:  
p,f=os.path.split(spath);  
print "dir is:"+p  
print "file is:"+f  
# case 2:  
drv,left=os.path.splitdrive(spath);  
print "driver is:"+drv  
print "left is:"+left  
# case 3:  
f,ext=os.path.splitext(spath);  
print "f is:"+f  
print "ext is:"+ext 

这三个函数都返回二元组.
1.case1 分隔目录和文件名
2.case2 分隔盘符和文件名
3.case3 分隔文件和扩展名
Python 相关文章推荐
Python的高级Git库 Gittle
Sep 22 Python
利用python实现数据分析
Jan 11 Python
Python常见内置高效率函数用法示例
Jul 31 Python
Python进阶之@property动态属性的实现
Apr 01 Python
python如何制作缩略图
Apr 30 Python
Python2.7实现多进程下开发多线程示例
May 31 Python
解决Jupyter NoteBook输出的图表太小看不清问题
Apr 16 Python
python numpy库np.percentile用法说明
Jun 08 Python
python如何更新包
Jun 11 Python
解决Pycharm双击图标启动不了的问题(JetBrains全家桶通用)
Aug 07 Python
使用Python提取文本中含有特定字符串的方法示例
Dec 09 Python
Python 中的 copy()和deepcopy()
Nov 07 Python
python下如何让web元素的生成更简单的分析
Jul 17 #Python
py中的目录与文件判别代码
Jul 16 #Python
Python Mysql自动备份脚本
Jul 14 #Python
python远程登录代码
Apr 29 #Python
复制粘贴功能的Python程序
Apr 04 #Python
推荐下python/ironpython:从入门到精通
Oct 02 #Python
在漏洞利用Python代码真的很爽
Aug 26 #Python
You might like
PHP安全配置详细说明
2011/09/26 PHP
php获取操作系统语言代码
2013/11/04 PHP
什么是OneThink oneThink后台添加插件步骤
2016/04/13 PHP
firefox下对ajax的onreadystatechange的支持情况分析
2009/12/14 Javascript
jQuery 树形结构的选择器
2010/02/15 Javascript
基于jquery的滚动新闻列表
2010/06/19 Javascript
[JSF]使用DataModel处理表行事件的实例代码
2013/08/05 Javascript
javascript 获取网页标题代码实例
2014/01/22 Javascript
js实现动画特效的文字链接鼠标悬停提示的方法
2015/03/02 Javascript
js实现商品抛物线加入购物车特效
2020/11/18 Javascript
JavaScript String 对象常用方法详解
2016/05/13 Javascript
总结AngularJS开发者最常犯的十个错误
2016/08/31 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
2016/11/18 Javascript
echarts3 使用总结(绘制各种图表,地图)
2017/01/05 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
微信小程序 首页制作简单实例
2017/04/07 Javascript
Vue.js2.0中的变化小结
2017/10/24 Javascript
详解Vue+axios+Node+express实现文件上传(用户头像上传)
2018/08/10 Javascript
详解Eslint 配置及规则说明
2018/09/10 Javascript
vue实现微信二次分享以及自定义分享的示例
2019/03/20 Javascript
浅谈一种让小程序支持JSX语法的新思路
2019/06/16 Javascript
基于vue-cli3创建libs库的实现方法
2019/12/04 Javascript
jquery实现进度条状态展示
2020/03/26 jQuery
vue 组件基础知识总结
2021/01/26 Vue.js
python3 发送任意文件邮件的实例
2018/01/23 Python
8款使用 CSS3 实现超炫的 Loading(加载)的动画效果
2015/03/17 HTML / CSS
伦敦高达60%折扣的钻石珠宝商:Purely Diamonds
2018/06/24 全球购物
意大利和国际奢侈品牌购物网站:Suitnegozi.com
2021/01/15 全球购物
说一下Linux下有关用户和组管理的命令
2016/01/04 面试题
Linux机考试题
2015/10/16 面试题
建筑实习自我鉴定
2013/10/18 职场文书
聘任书模板
2014/03/29 职场文书
小学生教师节演讲稿
2014/09/03 职场文书
2014年妇产科工作总结
2014/12/08 职场文书
授权委托书
2015/01/28 职场文书
幼儿园大班教师个人总结
2015/02/05 职场文书