Python os模組詳解
轉載自:http://www.jianshu.com/p/e294d124a076
操作檔案
# I use jupyter notebook 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模組詳解Python
- python的os模組的常見函式及用途詳解Python函式
- python os模組Python
- Python OS 模組Python
- python模組詳解Python
- Python 內建模組:os模組Python
- python的os模組Python
- python_OS 模組Python
- Python中os模組Python
- python docopt模組詳解Python
- python 詳解re模組Python
- Python os.path() 模組Python
- [Python]OS模組應用Python
- python–模組之os操作檔案模組Python
- Python之time模組詳解Python
- python requests模組詳解薦Python
- Python包(模組)管理詳解Python
- python—time模組使用詳解Python
- python—random模組使用詳解Pythonrandom
- python模組之os.pathPython
- Python::OS 模組 -- 程式引數Python
- Python OS模組操作檔案Python
- Python中os.walk()模組Python
- #PYTHON# os以及os.path模組介紹Python
- python—hashlib模組使用詳解Python
- Python之Requests模組使用詳解Python
- Python os模組參考手冊Python
- 【python基礎】os模組的使用Python
- 【python】os模組 的用法簡介Python
- Python 正規表示式模組詳解Python
- Python的常見模組:OS和 time模組介紹Python
- python os模組功能和方法總結Python
- Python入門(二十六):檔案模組(os模組與shutil模組)Python
- Python3 pickle模組的使用詳解Python
- python IO模組【二】:open函式詳解Python函式
- python3.x中argparse模組詳解Python
- Python的畫圖模組turtle使用詳解Python
- Python隨機數生成模組random詳解Python隨機random