Python: os模块实例详解
2016-08-20 20:59
721 查看
import os
操作文件
# to create some file touch foo.txt echo Hello > foo.txt cat foo.txt
Hello
# rename file os.rename('foo.txt','bar.txt') !cat bar.txt
Hello
# remove file os.remove('bar.txt')
改变目录
# current dir print os.getcwd() # current working directory
/Users/yongle/OMOOC2py/cheat
# go down os.chdir('img') print os.getcwd() # go back up os.chdir(os.pardir) #or simply os.chdir('..') print os.getcwd()
/Users/yongle/OMOOC2py/cheat/img
/Users/yongle/OMOOC2py/cheat
遍历目录listdir
# listdir !touch a.txt b.txt for file in os.listdir('.'): # os.listdir() return a list if file.endswith('.txt'): print file
a.txt b.txt
遍历os.walk
os.chdir('doc')
# Directory tree generator. # For each dir in the dir tree rooted at top (including top # itself, but excluding '.' and '..'), yields a 3-tuple # dirpath, dirnames, filenames for dirpath, dirnames, filenames in os.walk('.'): print dirnames print filenames break # only one level needed, or just use listdir
['folder1', 'folder2'] ['.DS_Store', 'a.txt', 'b.txt']
增删目录
单层目录# make a dir, one level, no duplication allowed os.mkdir('test')
# remove a dir, one level, not empty will raise OSError os.rmdir('test')
多层目录
# make dirs, multipul level os.makedirs('test/mulitiple/levels')
# remove all empty directories above it, ensure empty os.removedirs('test/mulitiple/levels')
非空目录
# remove non empty dir, ust a new module shutil.rmtree # copy function is also useful import shutil
# copy a.txt to backup folder # or just shutil.copy('a.txt','backup/') # use shutil.copytree to copy a folder like cp -r os.mkdir('backup') shutil.copy('a.txt',os.path.join('backup','a_backup.txt'))
# remove non empty folder shutil.rmtree('backup/')
os.path模块
# is a dir or not print(os.path.isdir('img')) print(os.path.isdir('a.txt'))
True False
# is a file or not print(os.path.isfile('img')) print(os.path.isfile('a.txt'))
False True
# determine the presence of path(a file or dir); os.path.lexists? print(os.path.exists('img')) print(os.path.exists('a.txt')) print(os.path.exists('none_exist.txt'))
True
True False
# Join two or more pathname components, inserting '/' as needed. # If any component is an absolute path, # all previous path components will be discarded. print(os.path.join('/Users','john')) print(os.path.join('/Users','/john')) print(os.path.join('/Users','john','a.txt'))
/Users/john /john /Users/john/a.txt
# split a pathname. Returns "(head, tail)" # where "tail" is everything after the final slash. os.path.split('/Users/john/a.txt')
('/Users/john', 'a.txt')
# split the extension from a pathname os.path.splitext('/Users/john/a.txt')
('/Users/john/a', '.txt')
# determine the size of a path(file or dir) os.path.getsize('a.txt')
0
相关文章推荐
- python os.path模块常用方法实例详解
- python os.path模块常用方法详解
- python time模块用法实例详解
- python学习——python os.path模块常用方法详解
- python os.path模块常用方法详解
- python os模块详解
- python os.stat() 和 stat模块详解
- python os.path模块常用方法详解
- python os模块实例(批量修改图片名称)
- python os.path模块常用方法详解
- Python os模块实例之遍历目录及子目录指定扩展名的文件
- python os.path模块常用方法详解
- python中urllib模块用法实例详解
- python中os和sys模块的详解
- python os.path模块常用方法详解
- python os.stat() 和 stat模块详解
- python os.path模块常用方法详解
- 转载的:Python os 和 os.path模块详解
- python之OS模块详解
- python os.path模块常用方法详解