Python中os模塊的實例用法
1、說明
os.path.exists():用于判斷某個路徑(文件或文件夾)是否存在,若存在則返回True,若不存在則返回False。
os.makedirs():用于創(chuàng)建文件夾。傳入所欲創(chuàng)建的文件夾的路徑即可,沒有返回值。值得一提的是,這個函數(shù)可以實現(xiàn)目錄的遞歸創(chuàng)建,也就是說如果所傳入的路徑中,倒數(shù)第二級的目錄也不存在,那么就會先創(chuàng)建該級目錄,然后在在目錄下創(chuàng)建所欲創(chuàng)建的目錄,依此類推。
os.path.basename():傳入一個文件的路徑,返回該文件的文件名。
os.path.dirname():與 os.path.basename() 相反,返回的是文件所在的目錄的路徑。
2、實例
img_path = '/home/wang/my_data/imgs/a.png' img_name = os.path.basename(img_path) img_dir = os.path.dirname(img_path) # img_name = 'a.png' # img_dir = '/home/wang/my_data/imgs' # 若所傳入地址為文件夾地址,例如 img_path = '/home/wang/my_data/imgs' # 則 img_name = 'imgs' , img_dir = '/home/wang/my_data'
知識點擴展:
os 模塊代表了程序所在的操作系統(tǒng),主要用于獲取程序運行所在操作系統(tǒng)的相關(guān)信息。
在 Python 的交互式解釋器中先導(dǎo)入 os 模塊,然后輸入 os.__all__ 命令(__all__ 變量代表了該模塊開放的公開接口),即可看到該模塊所包含的全部屬性和函數(shù)。
此處僅介紹 os 模塊中常用的屬性和函數(shù):
- os.name:返回導(dǎo)入依賴模塊的操作系統(tǒng)名稱,通常可返回 'posix'、'nt'、 'java' 等值其中之一。
- os.environ:返回在當前系統(tǒng)上所有環(huán)境變量組成的字典。
- os.fsencode(filename):該函數(shù)對類路徑(path-like)的文件名進行編碼。
- os.fsdecode(filename):該函數(shù)對類路徑(path-like)的文件名進行解碼。
- os.PathLike:這是一個類,代表一個類路徑(path-like)對象。
- os.getenv(key, default=None):獲取指定環(huán)境變量的值。
- os.getlogin():返回當前系統(tǒng)的登錄用戶名。與該函數(shù)對應(yīng)的還有 os.getuid()、os.getgroups()、os.getgid() 等函數(shù),用于獲取用戶 ID、用戶組、組 ID 等,這些函數(shù)通常只在 UNIX 系統(tǒng)上有效。
- os.getpid():獲取當前進程 ID。
- os.getppid():獲取當前進程的父進程 ID。
- os.putenv(key, value):該函數(shù)用于設(shè)置環(huán)境變量。
- os.cpu_count():返回當前系統(tǒng)的 CPU 數(shù)量。
- os.sep:返回路徑分隔符。
- os.pathsep:返回當前系統(tǒng)上多條路徑之間的分隔符。一般在 Windows 系統(tǒng)上多條路徑之間的分隔符是英文分號(;);在 UNIX 及類 UNIX 系統(tǒng)(如 Linux、Mac os X)上多條路徑之間的分隔符是英文冒號(:)。
- os.linesep:返回當前系統(tǒng)的換行符。一般在 Windows 系統(tǒng)上換行符是“\r\n”:在 UNIX 系統(tǒng)上換行符是“\n”;在 Mac os X 系統(tǒng)上換行符是“\r”。
- os.urandom(size):返回適合作為加密使用的、最多由 N 個字節(jié)組成的 bytes 對象。該函數(shù)通過操作系統(tǒng)特定的隨機性來源返回隨機字節(jié),該隨機字節(jié)通常是不可預(yù)測的,因此適用于絕大部分加密場景。
到此這篇關(guān)于Python中os模塊的實例用法的文章就介紹到這了,更多相關(guān)Python中os模塊的功能介紹內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Keras實現(xiàn)Vision?Transformer?VIT模型示例詳解
這篇文章主要為大家介紹了Keras實現(xiàn)Vision?Transformer?VIT模型示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05基于Python的網(wǎng)頁自動化工具DrissionPage的使用詳解
DrissionPage 是一個基于 python 的網(wǎng)頁自動化工具,它既能控制瀏覽器,也能收發(fā)數(shù)據(jù)包,還能把兩者合而為一,下面就跟隨小編一起來學(xué)習(xí)一下它的具體使用吧2024-01-01Python3爬蟲爬取英雄聯(lián)盟高清桌面壁紙功能示例【基于Scrapy框架】
這篇文章主要介紹了Python3爬蟲爬取英雄聯(lián)盟高清桌面壁紙功能,結(jié)合實例形式分析了基于Scrapy爬蟲框架進行圖片爬取的相關(guān)項目創(chuàng)建、文件結(jié)構(gòu)、功能實現(xiàn)操作技巧與注意事項,需要的朋友可以參考下2018-12-12Python實現(xiàn)快速排序和插入排序算法及自定義排序的示例
這篇文章主要介紹了Python實現(xiàn)快速排序和插入排序算法及自定義排序的示例,自定義排序用到了Python的sort和sorted函數(shù),需要的朋友可以參考下2016-02-02python3 將階乘改成函數(shù)形式進行調(diào)用的操作
這篇文章主要介紹了python3 將階乘改成函數(shù)形式進行調(diào)用的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03基于TensorBoard中g(shù)raph模塊圖結(jié)構(gòu)分析
今天小編就為大家分享一篇基于TensorBoard中g(shù)raph模塊圖結(jié)構(gòu)分析,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實例
今天小編就為大家分享一篇Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01Python pygame實現(xiàn)圖像基本變換的示例詳解
pygame的transform中封裝了一些基礎(chǔ)的圖像處理函數(shù),這篇文章主要為大家介紹了pygame實現(xiàn)圖像的基本變換,例如縮放、旋轉(zhuǎn)、鏡像等,感興趣的小伙伴可以了解一下2023-11-11