首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

Python常见资料操作的函数示例

2012-12-18 
Python常见文件操作的函数示例?Python常见文件操作示例???? os.path 模块中的路径名访问函数??? 分隔??? b

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

?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()? ?

?

http://www.cnblogs.com/txw1958/archive/2012/03/08/2385540.html

热点排行