001常用技巧搜集
一、文件操作
- 创建多级目录
## 创建多层目录 def mkdirs(path): #去除首位空格 path = path.strip() #去除尾部 \ 符号 path = path.rstrip("\\") # 判断路径是否存在 isExists = os.path.exists(path) if not isexists: os.makedirs(path) return True else: return False
#创建文件 os.mknod("newFile.txt") # or open("newFile.txt", "w") #w: 写模式。特性:文件不存在,就创建。写前会清空文件内容 #r : 写模式。特性:文件不许存在 #a : 追加模式。特性:文件不存在,就创建。写入内容放到文件末尾。 #+: 表示读写模式,三中基本模式都有。 # 复制文件 shutil.copyfile("oldFile", "newFile") # oldFile、newFile 只能是文件 shutil.copy("oldFile", "new") #oldFile 必须是文件夹,new即可以是文件,也可以是文件夹 #复制文件夹 shutil.copytree("oldDir", "newDir") #oldDir、newDir只能是目录,并且newDir必须存在 #重命名文件(目录) os.rename("oldName", "newName") #移动文件、目录 shutil.move("oldPos", "newPos") #删除文件 os.remove("file") #删除目录 os.rmdir("dir") #只能删除空目录 shutil.rmtree("dir") #空目录、有内容的目录都可以删除 #转换目录 os.chdir("path") #判断是否存在 os.path.exists("goal") #判断是否是目录 os.path.isdir("goal") #判断是否是文件 os.path.isfile("goal") #遍历目录 os.listdir("path")
获取文件属性
#!/usr/bin/env python #-*- coding:utf-8 -*- import re import os import sys import stat import time fileStats = os.stat ( 'filestat.py' ) #获取文件/目录的状态 fileInfo = { 'Size':fileStats [ stat.ST_SIZE ], #获取文件大小 'LastModified':time.ctime( fileStats [ stat.ST_MTIME ] ), #获取文件最后修改时间 'LastAccessed':time.ctime( fileStats [ stat.ST_ATIME ] ), #获取文件最后访问时间 'CreationTime':time.ctime( fileStats [ stat.ST_CTIME ] ), #获取文件创建时间 'Mode':fileStats [ stat.ST_MODE ] #获取文件的模式 } #print fileInfo for field in fileInfo: #显示对象内容 print '%s:%s' % (field,fileInfo[field]) print fileStats print type(fileStats) ''' stat模块描述了os.stat(filename)返回的文件属性列表中各值的意义 os.stat(path)执行一个stat()系统调用在给定的path上,返回一个类元组对象(stat_result对象,包含10个元素), 属性与stat结构成员相关:st_mode(权限模式),st_ino(inode number),st_dev(device),st_nlink(number of hard links), st_uid(所有用户的user id),st_gid(所有用户的group id), st_size(文件大小,以位为单位),st_atime(最近访问的时间),st_mtime(最近修改的时间),st_ctime(创建的时间) ''' print fileStats.st_mode print fileStats.st_ino print fileStats.st_dev print fileStats.st_nlink print fileStats.st_uid print fileStats.st_gid print fileStats.st_size print fileStats.st_atime print fileStats.st_mtime print fileStats.st_ctime
参考:http://catroll.com/post-123.html