Python基础入门:常用的os操作
生活随笔
收集整理的這篇文章主要介紹了
Python基础入门:常用的os操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python自動的os庫是和操作系統交互的庫,常用的操作包括文件/目錄操作,路徑操作,環境變量操作和執行系統命令等。
文件/目錄操作
- 獲取當前目錄(pwd): os.getcwd()
- 切換目錄(cd): os.chdir(’/usr/local/’)
- 列出目錄所有文件(ls):os.listdir(’/usr/local/’)
- 創建目錄(mkdir):os.makedirs(’/usr/local/tmp’)
- 刪除目錄(rmdir):os.removedirs(’/usr/local/tmp’) # 只能刪除空目錄,遞歸刪除可以使用import shutil;shutil.rmtree(’/usr/local/tmp’)
- 刪除文件(rm):os.remove(’/usr/local/a.txt’)
- 遞歸遍歷目錄及子目錄:os.walk()
示例:遍歷/usr/local目錄及子下所有文件和目錄,并組裝出每個文件完整的路徑名
import os for root, dirs, files in os.walk("/usr/local", topdown=False):for name in files:print('文件:', os.path.join(root, name))for name in dirs:print('目錄:', os.path.join(root, name))路徑操作
- 當前Python腳本文件:__file__
- 獲取文件所在路徑:os.path.basename(__file__) # 不含當前文件名
- 獲取文件絕對路徑:os.path.abspath(__file__) # 包含當前文件名
- 獲取所在目錄路徑:os.path.dirname(__file__)
- 分割路徑和文件名:os.path.split('/usr/local/a.txt') # 得到一個[路徑,文件名]的列表
- 分割文件名和擴展名:os.path.splitext('a.txt') # 得到['a', '.txt']
- 判斷路徑是否存在:os.path.exists('/usr/local/a.txt')
- 判斷路徑是否文件:os.path.isfile('/usr/local/a.txt')
- 判斷路徑是否目錄:os.path.isdir('/usr/local/a.txt')
- 組裝路徑:os.path.join('/usr', 'local', 'a.txt')
示例:獲取項目根路徑和報告文件路徑
假設項目結構如下
在run.py中獲取項目的路徑和report.html的路徑
''' 學習中遇到問題沒人解答?小編創建了一個Python學習交流QQ群:725638078 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import osbase_dir = os.path.dirname(__file__) # __file__是run.py文件,os.path.dirname獲取到其所在的目錄project即項目根路徑 report_file = os.path.join(base_dir, 'reports', 'report.html') # 使用系統路徑分隔符('\')連接項目根目錄base_dir和'reports'及'report.html'得到報告路徑 print(report_file)環境變量操作
- 獲取環境變量:os.environ.get(‘PATH’)或os.getenv(‘PATH’)
- 設置環境變量:os.environ[‘MYSQL_PWD’]=‘123456’
執行系統命令
執行系統命令:os.system("jmeter -n -t /usr/local/demo.jmx") # 無法獲取屏幕輸出的信息,相要獲取運行屏幕信息,可以使用subprocess
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Python基础入门:常用的os操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python基础入门:3种字符串格式化方
- 下一篇: Python基础入门:正则re.sub使