Python常用模塊os——與操作系統交互

os.getcwd()

返回當前工作目錄絕對路徑

Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import os
>>> print(os.getcwd())
C:\Users\28914\AppData\Local\Programs\Python\Python37

os.chdir(newpath)

更改當前工作目錄

>>> import os
>>> print(os.getcwd())
C:\Users\28914\AppData\Local\Programs\Python\Python37
>>> os.chdir("C:\\")
>>> print(os.getcwd())
C:\

os.mkdir(dirpath)

創建單級目錄,其父目錄必須存在,否則應使用os.makedirs()創建多級目錄

>>> import os
>>> os.mkdir("test1")

os.makedirs(dirpath1\dirpath2)

創建多級目錄

>>> import os
>>> os.makedirs("test2\\test3")

os.removedirs(dirpath\filename)

刪除空目錄,并遞歸到上一級目錄,如若上一級目錄也為空,則也刪除,以此類推,最下層目錄非空則報錯

>>> import os
>>> os.removedirs("test2\\test3")

os.remove(filepath)

刪除文件

>>> import os
>>> os.remove("test.txt")

os.listdir(dirpath)

返回一個列表,列出文件夾內所有文件及子文件夾的名稱

>>> import os
>>> os.listdir("C:\\")
['$360Section', '$Recycle.Bin', '360RecoveryEnv', '360Safe', '360SANDBOX', 'aow_drv.log', 'bootmgr', 'Config.Msi', 'Documents and Settings', 'hiberfil.sys', 'Intel', 'pagefile.sys', 'Program Files', 'Program Files (x86)', 'ProgramData', 'QMDownload', 'QMProxyAccelGameList.dat', 'Qt', 'Recovery', 'Strawberry', 'swapfile.sys', 'System Volume Information', 'temp', 'Users', 'Windows']

os.walk(dirpath)

返回一個生成器,遍歷文件夾及其所有子孫文件夾內所有文件夾及文件
每一項為一個路徑信息的元組,元組第一項為該絕對路徑,第二項為該路徑下文件夾的列表,第三項為該路徑下文件的列表

>>> import os
>>> for item in os.walk(r"E:\素材"):
    print(item)

('E:\\素材', ['游戲人生', '表情包'], ['035曦紅柿【人女】導入圖.jpg', 'code-wallpaper-8.jpg'])
('E:\\素材\\游戲人生', ['圖片'], [])
('E:\\素材\\游戲人生\\圖片', [], ['5ab5c9ea15ce36d380894f9931f33a87e850b18e.jpg', '7af40ad162d9f2d387245a7fa2ec8a136327cc6d.jpg', 'c64edcc451da81cb9482033c5e66d016082431ff.jpg'])

os.rename(oldname,newname)

重命名文件或目錄

os.stat(filepath)

返回文件屬性信息對象

>>> import os
>>>> os.stat("C:\\aow_drv.log")
os.stat_result(st_mode=33206, st_ino=41376821576981610, st_dev=2818738962, st_nlink=1, st_uid=0, st_gid=0, st_size=4429383, st_atime=1556684018, st_mtime=1556684018, st_ctime=1556619281)
>>> state = os.stat("C:\\aow_drv.log")
>>> state.st_mode
33206
>>> state.st_size
4429383

os.system(command)

運行系統命令,在Windows中相當于cmd命令,命令成功執行則返回0,否則返回1

>>> import os
>>> os.system("Notepad.exe")

os.popen(command)

同樣是運行系統命令,但返回執行結果內容,通過 .read() 獲取

>>> import os
>>> result = os.popen("ipconfig")
>>> result.read()
'\nWindows IP 配置\n\n\n以太網適配器 以太網:\n\n   媒體狀態  . . . . . . . . . . . . : 媒體已斷開連接\n   連接特定的 DNS 后綴 . . . . . . . : \n\n以太網適配器 VirtualBox Host-Only Network:\n\n   連接特定的 DNS 后綴 . . . . . . . : \n   本地鏈接 IPv6 地址. . . . . . . . : fe80::61c7:10ea:8fe9:d802%9\n   IPv4 地址 . . . . . . . . . . . . : 192.168.56.1\n   子網掩碼  . . . . . . . . . . . . : 255.255.255.0\n   默認網關. . . . . . . . . . . . . : \n\n無線局域網適配器 本地連接* 1:\n\n   媒體狀態  . . . . . . . . . . . . : 媒體已斷開連接\n   連接特定的 DNS 后綴 . . . . . . . : \n\n無線局域網適配器 本地連接* 2:\n\n   媒體狀態  . . . . . . . . . . . . : 媒體已斷開連接\n   連接特定的 DNS 后綴 . . . . . . . : \n\n無線局域網適配器 WLAN:\n\n   連接特定的 DNS 后綴 . . . . . . . : lan\n   本地鏈接 IPv6 地址. . . . . . . . : fe80::fd93:45be:3220:a352%5\n   IPv4 地址 . . . . . . . . . . . . : 10.10.10.144\n   子網掩碼  . . . . . . . . . . . . : 255.255.255.0\n   默認網關. . . . . . . . . . . . . : 10.10.10.1\n\n以太網適配器 藍牙網絡連接:\n\n   媒體狀態  . . . . . . . . . . . . : 媒體已斷開連接\n   連接特定的 DNS 后綴 . . . . . . . : \n'
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 一、os介紹 os模塊主要是對操作執行執行操作,導入方法:import os 二、os.path模塊的基本操作 1...
    rr1990閱讀 488評論 0 0
  • #當前文件的路徑 pwd=os.getcwd() #當前文件的父路徑 father_path=os.path.ab...
    朝畫夕拾閱讀 3,980評論 0 1
  • 今天,最有意義的一件事就是帶著寶貝看青蛙還有幾種魚。 那些青蛙靜靜地趴在那里,一動不動,睜著圓溜溜的眼睛,不眨一下...
    悅清兒閱讀 393評論 0 0
  • 啦啦啦,各位簡友們大家好呀,今年暑假二哈又出去兼職,體會生活了。 這次二哈做了一個比較靠譜的兼職,去教育機構當網課...
    花落長安各生歡閱讀 1,172評論 1 1
  • 你我比星星還要閃耀的約定, 你為我采下的那朵不知名的花, 早已枯謝 然而所有的事物都在尋找自己的位置而離開 你,也...
    52號夙愿閱讀 417評論 9 7