Python常见文件操作的函数示例代码


Posted in Python onNovember 15, 2011
# -*-coding:utf8 -*- 
''' 
Python常见文件操作示例 
os.path 模块中的路径名访问函数 
分隔 
basename() 去掉目录路径, 返回文件名 
dirname() 去掉文件名, 返回目录路径 
join() 将分离的各部分组合成一个路径名 
split() 返回 (dirname(), basename()) 元组 
splitdrive() 返回 (drivename, pathname) 元组 
splitext() 返回 (filename, extension) 元组 
信息 
getatime() 返回最近访问时间 
getctime() 返回文件创建时间 
getmtime() 返回最近文件修改时间 
getsize() 返回文件大小(以字节为单位) 
查询 
exists() 指定路径(文件或目录)是否存在 
isabs() 指定路径是否为绝对路径 
isdir() 指定路径是否存在且为一个目录 
isfile() 指定路径是否存在且为一个文件 
islink() 指定路径是否存在且为一个符号链接 
ismount() 指定路径是否存在且为一个挂载点 
samefile() 两个路径名是否指向同个文件 
os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false 
os.path.isfile(name):判断name是不是一个文件,不存在name也返回false 
os.path.exists(name):判断是否存在文件或目录name 
os.path.getsize(name):获得文件大小,如果name是目录返回0L 
os.path.abspath(name):获得绝对路径 
os.path.normpath(path):规范path字符串形式 
os.path.split(name):分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在) 
os.path.splitext():分离文件名与扩展名 
os.path.join(path,name):连接目录与文件名或目录 
os.path.basename(path):返回文件名 
os.path.dirname(path):返回文件路径 os模块中的文件操作: 
os 模块属性 
linesep 用于在文件中分隔行的字符串 
sep 用来分隔文件路径名的字符串 
pathsep 用于分隔文件路径的字符串 
curdir 当前工作目录的字符串名称 
pardir (当前工作目录的)父目录字符串名称 
1.重命名:os.rename(old, new) 
2.删除:os.remove(file) 
3.列出目录下的文件:os.listdir(path) 
4.获取当前工作目录:os.getcwd() 
5.改变工作目录:os.chdir(newdir) 
6.创建多级目录:os.makedirs(r"c:\python\test") 
7.创建单个目录:os.mkdir("test") 
8.删除多个目录:os.removedirs(r"c:\python") #删除所给路径最后一个目录下所有空目录。 
9.删除单个目录:os.rmdir("test") 
10.获取文件属性:os.stat(file) 
11.修改文件权限与时间戳:os.chmod(file) 
12.执行操作系统命令:os.system("dir") 
13.启动新进程:os.exec(), os.execvp() 
14.在后台执行程序:osspawnv() 
15.终止当前进程:os.exit(), os._exit() 
16.分离文件名:os.path.split(r"c:\python\hello.py") --> ("c:\\python", "hello.py") 
17.分离扩展名:os.path.splitext(r"c:\python\hello.py") --> ("c:\\python\\hello", ".py") 
18.获取路径名:os.path.dirname(r"c:\python\hello.py") --> "c:\\python" 
19.获取文件名:os.path.basename(r"r:\python\hello.py") --> "hello.py" 
20.判断文件是否存在:os.path.exists(r"c:\python\hello.py") --> True 
21.判断是否是绝对路径:os.path.isabs(r".\python\") --> False 
22.判断是否是目录:os.path.isdir(r"c:\python") --> True 
23.判断是否是文件:os.path.isfile(r"c:\python\hello.py") --> True 
24.判断是否是链接文件:os.path.islink(r"c:\python\hello.py") --> False 
25.获取文件大小:os.path.getsize(filename) 
26.*******:os.ismount("c:\\") --> True 
27.搜索目录下的所有文件:os.path.walk() 
shutil模块对文件的操作: 
1.复制单个文件:shultil.copy(oldfile, newfle) 
2.复制整个目录树:shultil.copytree(r".\setup", r".\backup") 
3.删除整个目录树:shultil.rmtree(r".\backup") 
临时文件的操作: 
1.创建一个唯一的临时文件:tempfile.mktemp() --> filename 
2.打开临时文件:tempfile.TemporaryFile() 
内存文件(StringIO和cStringIO)操作 
[4.StringIO] #cStringIO是StringIO模块的快速实现模块 
1.创建内存文件并写入初始数据:f = StringIO.StringIO("Hello world!") 
2.读入内存文件数据:print f.read() #或print f.getvalue() --> Hello world! 
3.想内存文件写入数据:f.write("Good day!") 
4.关闭内存文件:f.close() 
''' 
import os 
import os.path 
import unittest 
import time 
#import pygame 
class PyFileCommonOperatorTest(unittest.TestCase): 
def __init__(self): 
"""constructor""" 
def test01(self): 
print os.linesep 
print os.sep 
print os.pathsep 
print os.curdir 
print os.pardir 
print os.getcwd() 
print 'unittest here' 
if __name__ == "__main__": 
t = PyFileCommonOperatorTest() 
t.test01()

#读文件的写法: 
#读文本文件: 
input = open('data', 'r')#第二个参数是默认的,可以不加 
#读二进制文件: 
input = open('data', 'rb') 
#读取所有文件内容: 
open('xxoo.txt').read() 
#读取固定字节 
open('abinfile', 'rb').read(100) 
#读每行 
file_object.readlines()
Python 相关文章推荐
python读取浮点数和读取文本文件示例
May 06 Python
python进阶教程之循环相关函数range、enumerate、zip
Aug 30 Python
python通过字典dict判断指定键值是否存在的方法
Mar 21 Python
python中logging库的使用总结
Oct 18 Python
用Python写一段用户登录的程序代码
Apr 22 Python
DRF跨域后端解决之django-cors-headers的使用
Jan 27 Python
Python Collatz序列实现过程解析
Oct 12 Python
解决Python import docx出错DLL load failed的问题
Feb 13 Python
Django 解决distinct无法去除重复数据的问题
May 20 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
Aug 07 Python
详解python tkinter 图片插入问题
Sep 03 Python
利用python+request通过接口实现人员通行记录上传功能
Jan 13 Python
python 控制语句
Nov 03 #Python
python 不关闭控制台的实现方法
Oct 23 #Python
python中将阿拉伯数字转换成中文的实现代码
May 19 #Python
python访问纯真IP数据库的代码
May 19 #Python
Python模块学习 re 正则表达式
May 19 #Python
PYTHON正则表达式 re模块使用说明
May 19 #Python
python 随机数生成的代码的详细分析
May 15 #Python
You might like
ThinkPHP行为扩展Behavior应用实例详解
2014/07/22 PHP
php实现指定字符串中查找子字符串的方法
2015/03/17 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
用jquery ajax获取网站Alexa排名的代码
2009/12/12 Javascript
使用Jquery Aajx访问WCF服务(GET、POST、PUT、DELETE)
2012/03/16 Javascript
jquery实现的可隐藏重现的靠边悬浮层实例代码
2013/05/27 Javascript
JS的document.all函数使用示例
2013/12/30 Javascript
JQuery下拉框应用示例介绍
2014/04/23 Javascript
Lab.js初次使用笔记
2015/02/28 Javascript
Jquery实现遮罩层的方法
2015/06/08 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
2015/10/20 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
2016/03/22 Javascript
探讨:JavaScript ECAMScript5 新特性之get/set访问器
2016/05/05 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
2016/10/28 Javascript
AngularJS改变元素显示状态
2017/04/20 Javascript
详解如何在React组件“外”使用父组件的Props
2018/01/12 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
Python创建系统目录的方法
2015/03/11 Python
python list元素为tuple时的排序方法
2018/04/18 Python
Python爬虫获取图片并下载保存至本地的实例
2018/06/01 Python
python flask实现分页的示例代码
2018/08/02 Python
python opencv 读取本地视频文件 修改ffmpeg的方法
2019/01/26 Python
python 中如何获取列表的索引
2019/07/02 Python
Python内置加密模块用法解析
2019/11/25 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
2020/05/26 Python
python 模块导入问题汇总
2021/02/01 Python
用纯CSS3实现网页中常见的小箭头
2017/10/16 HTML / CSS
Canvas与图片压缩的示例代码
2017/11/28 HTML / CSS
英国家用电器折扣网站:Electrical Discount UK
2018/09/17 全球购物
英国在线电子和小工具商店:TecoBuy
2018/10/06 全球购物
《蚂蚁和蝈蝈》教学反思
2014/02/24 职场文书
3.15国际消费者权益日主题活动活动总结
2014/03/16 职场文书
绿化工程实施方案
2014/03/17 职场文书
霸气队列口号
2014/06/18 职场文书
领导班子整改方案和个人整改措施
2014/10/25 职场文书
计算机实训报告总结
2014/11/05 职场文书