Python中常用的os操作匯總
Python自動(dòng)的os庫是和操作系統(tǒng)交互的庫,常用的操作包括文件/目錄操作,路徑操作,環(huán)境變量操作和執(zhí)行系統(tǒng)命令等。
文件/目錄操作
- 獲取當(dāng)前目錄(pwd):
os.getcwd() - 切換目錄(cd):
os.chdir('/usr/local/') - 列出目錄所有文件(ls):
os.listdir('/usr/local/') - 創(chuàng)建目錄(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目錄及子下所有文件和目錄,并組裝出每個(gè)文件完整的路徑名
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))
路徑操作
- 當(dāng)前Python腳本文件:
__file__ - 獲取文件所在路徑:
os.path.basename(__file__)# 不含當(dāng)前文件名 - 獲取文件絕對路徑:
os.path.abspath(__file__)# 包含當(dāng)前文件名 - 獲取所在目錄路徑:
os.path.dirname(__file__) - 分割路徑和文件名:
os.path.split('/usr/local/a.txt')# 得到一個(gè)[路徑,文件名]的列表 - 分割文件名和擴(kuò)展名:
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')
示例:獲取項(xiàng)目根路徑和報(bào)告文件路徑
假設(shè)項(xiàng)目結(jié)構(gòu)如下
project/ data' reports/ report.html testcases/ config.py run.py
在run.py中獲取項(xiàng)目的路徑和report.html的路徑
# filename: run.py
import os
base_dir = os.path.dirname(__file__) # __file__是run.py文件,os.path.dirname獲取到其所在的目錄project即項(xiàng)目根路徑
report_file = os.path.join(base_dir, 'reports', 'report.html') # 使用系統(tǒng)路徑分隔符('\')連接項(xiàng)目根目錄base_dir和'reports'及'report.html'得到報(bào)告路徑
print(report_file)
環(huán)境變量操作
- 獲取環(huán)境變量:os.environ.get('PATH')或os.getenv('PATH')
- 設(shè)置環(huán)境變量:os.environ['MYSQL_PWD']='123456'
執(zhí)行系統(tǒng)命令
執(zhí)行系統(tǒng)命令:os.system("jmeter -n -t /usr/local/demo.jmx") # 無法獲取屏幕輸出的信息,相要獲取運(yùn)行屏幕信息,可以使用subprocess
作者: 韓志超
更多關(guān)于python的相關(guān)知識,請關(guān)注python客棧
以上就是Python中常用的os操作匯總的詳細(xì)內(nèi)容,更多關(guān)于python os操作的資料請關(guān)注腳本之家其它相關(guān)文章!
- Python os庫常用操作代碼匯總
- Python通過kerberos安全認(rèn)證操作kafka方式
- Python 操作 PostgreSQL 數(shù)據(jù)庫示例【連接、增刪改查等】
- 淺談Python中os模塊及shutil模塊的常規(guī)操作
- Python常用模塊os.path之文件及路徑操作方法
- Python3模擬curl發(fā)送post請求操作示例
- python 中文件輸入輸出及os模塊對文件系統(tǒng)的操作方法
- 詳談Python3 操作系統(tǒng)與路徑 模塊(os / os.path / pathlib)
- Python中用psycopg2模塊操作PostgreSQL方法
- Python之os操作方法(詳解)
- Python中的os.path路徑模塊中的操作方法總結(jié)
相關(guān)文章
Python?Flask-Login構(gòu)建強(qiáng)大的用戶認(rèn)證系統(tǒng)實(shí)例探究
這篇文章主要為大家介紹了Python?Flask-Login構(gòu)建強(qiáng)大的用戶認(rèn)證系統(tǒng)示例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
python實(shí)現(xiàn)獲取當(dāng)前設(shè)備的地點(diǎn)位置
這篇文章主要介紹了python實(shí)現(xiàn)獲取當(dāng)前設(shè)備的地點(diǎn)位置,電腦如何獲取當(dāng)前所處的地理位置?它不會(huì)像我們一樣對地理位置有感性的認(rèn)知,它只認(rèn)識數(shù)據(jù),簡言之,電腦可以通過獲取當(dāng)前連接的公網(wǎng)IP,反推所處的位置環(huán)境,需要的朋友可以參考一下2022-03-03
Pytorch 多維數(shù)組運(yùn)算過程的索引處理方式
今天小編就為大家分享一篇Pytorch 多維數(shù)組運(yùn)算過程的索引處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
詳解Selenium如何使用input標(biāo)簽上傳文件完整流程
這篇文章主要介紹了詳解Selenium如何使用input標(biāo)簽上傳文件完整流程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
python腳本監(jiān)控Tomcat服務(wù)器的方法
這篇文章主要介紹了利用python腳本監(jiān)控Tomcat服務(wù)器的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07


