1. 程式人生 > >python 標準庫模塊之 os 模塊

python 標準庫模塊之 os 模塊

str 就是 direct error: rename ast 內容 ace 字符

os 模塊

作用

調用系統模塊

常見用法

os.getcwd() 獲取當前工作目錄,即當前python腳本工作的目錄路徑

os.chdir("dirname") 改變當前腳本工作目錄;相當於shell下cd

os.curdir 返回當前目錄: (‘.‘)

os.makedirs(‘dirname1/dirname2‘) 創建多層目錄

os.removedirs(‘dirname1‘) 目錄為空則刪除

os.mkdir(‘dirname‘) 生成單級目錄;相當於shell中mkdir dirname

os.rmdir(‘dirname‘) 刪除單級空目錄,若目錄不為空則無法刪除,報錯;相當於shell中rmdir dirname

os.listdir(‘dirname‘) 列出指定目錄下的所有文件和子目錄,包括隱藏文件,並以列表方式打印

os.remove() 刪除一個文件

os.rename("oldname","newname") 文件重命名

os.stat(‘path/filename‘) 獲取文件的目錄信息

os.sep 輸出操作系統特定的路徑分隔符,win下為\,Linux下為/

os.linesep 輸出當前平臺使用的行終止符,win下為\t\n,Linux下為\n

os.pathsep 輸出用於分割文件路徑的字符串

os.name 輸出字符串指示當前使用平臺。win->nt; Linux->posix

os.system("bash command") 運行shell 命令

os.environ 獲取當前系統的環境變量

os.path.abspath(path) 返回path規範化的絕對路徑

os.path.split(path) 將path 分割成目錄 和文件二元組返回

os.path.dirname(path) 返回path的目錄。其實就是os.path.split(path)的第一個元素

os.path.basename(path) 返回path最後的文件名。如何path以/或\結尾,那麽就會返回空值。即os.path.split(path)的第二個元素

os.path.exists(path) 判斷path 路徑是否存在,存在就為true ,否則為false

os.path.isabs(path) 如果path是絕對路徑,返回True

os.path.isfile(path) 如果path是一個存在的文件,返回True。否則返回False

os.path.isdir(path) 如果path是一個存在的目錄,則返回True。否則返回False

os.path.join(path1[, path2[,...]]) 將多個路徑組合到一起在返回

os.path.getatime(path) 返回path所指向的文件或者目錄的最後存取時間

os.path.getmtime(path) 返回path所指向的文件或者目錄的最後修改時間

示列演示

獲取當前工作目錄

>> import os
>> os.getcwd()
‘/home/tomcat‘

切換工作路徑

>> os.chdir(‘python_test‘)
>> os.getcwd()
‘/home/tomcat/python_test‘

創建多層目錄
os.makedirs(‘a1/a2‘)

刪除多層目錄

>> os.removedirs(‘a1‘)
報錯
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/python/lib/python3.6/os.py", line 259, in removedirs
rmdir(name)
OSError: [Errno 39] Directory not empty: ‘a1‘

>> os.removedirs(‘a1/a2‘)

創建單層目錄

>> os.mkdir(‘a1‘)
>> os.chdir(‘a1‘)
>> os.getcwd()
‘/home/tomcat/python_test/a1‘

刪除單層目錄

>> os.rmdir(‘a1‘)

展示當前目錄的內容

>> os.listdir(os.getcwd())
[‘server5.py‘, ‘cleint5-1.py‘, ‘server3.py‘, ‘client3-1.py‘, ‘logs‘, ‘scp_dir.py‘]

判斷文件是否存在

>> os.path.exists(‘/home/tomcat/python_test/12.txt‘)
>>
False
>> os.path.isfile(‘/home/tomcat/python_test/10.txt‘)
True

查看當前操作系統的平臺

>> os.name
‘posix‘

獲取文件名稱

>> os.path.basename(‘/home/tomcat/python_test/10.txt‘)
‘10.txt‘

將多個路徑組合並返回

>> os.path.join(os.getcwd(),‘test1‘)
‘/home/tomcat/python_test/test1‘

python 標準庫模塊之 os 模塊