Python中os.path.join函數(shù)的用法舉例詳細(xì)講解
一、os.path.join函數(shù)
os.path.join函數(shù)用于拼接多個(gè)路徑字符串,生成一個(gè)新的路徑字符串。
用法:os.path.join(path,*paths)
二、函數(shù)用法個(gè)人總結(jié)
1. 處理不同操作系統(tǒng)的路徑分隔符。
2. 從右往左看參數(shù),如果一個(gè)參數(shù)<開頭>無‘/’或者‘\’,則按照操作系統(tǒng)用分隔符,如果遇到,則左邊參數(shù)均會(huì)被舍棄。
3. 從右往左看參數(shù),如果有一個(gè)參數(shù)是一個(gè)絕對(duì)路徑,則在它左邊的所有參數(shù)均會(huì)被舍棄。
4. 如果最后一個(gè)參數(shù)為''空,則生成的路徑以一個(gè)‘\’分隔符結(jié)尾(按照操作系統(tǒng)默認(rèn)分隔符)
5. 同時(shí)存在以‘./’與‘/’開始的參數(shù),以‘/’為主,從最后一個(gè)以‘/’開頭的參數(shù)開始拼接,之前的參數(shù)全部丟棄。
6. 只存在以“. / ”開始的子路徑,而不存在以“ / ”開頭的子路徑,則會(huì)將“. / ”里面的“ . ”當(dāng)作子路徑的一部分,進(jìn)行拼接。
三、函數(shù)的用法示例詳解
本臺(tái)電腦操作系統(tǒng):Win10
1. 處理不同操作系統(tǒng)的路徑分隔符。
os.path.join函數(shù)能夠根據(jù)操作系統(tǒng)自動(dòng)選擇適當(dāng)?shù)穆窂椒指舴?。例如Windows使用反斜杠‘\’,而Unix和Mac使用正斜杠‘/’。
本臺(tái)電腦操作系統(tǒng):Win10,所以只能展示基本用法
Demo1
import os
print(os.path.join('path', 'www', 'xxx', 'iii'))
# 輸出:path\www\xxx\iii2. 從右往左看參數(shù),如果一個(gè)參數(shù)<開頭>無正斜杠‘/’或者反斜杠‘\’,則按照操作系統(tǒng)用分隔符,如果遇到,則左邊參數(shù)均會(huì)被舍棄。
Demo2
import os
print(os.path.join('path', 'www', 'xxx', 'iii'))
# 輸出:path\www\xxx\iii
print(os.path.join('path', 'www', 'xxx', '/iii'))
# 輸出:/iii
print(os.path.join('path', 'www', '/xxx', 'iii'))
# 輸出:/xxx\iii
print(os.path.join('path', '/www', 'xxx', 'iii'))
# 輸出:/www\xxx\iii
print(os.path.join('path', '\www', 'xxx', 'iii'))
# 輸出:\www\xxx\iii
print(os.path.join('p/a/t/h/', 'www/', 'x/x/x/', 'ii/i')) # 如果使用都是‘/',則要在參數(shù)末尾加上/,不然會(huì)根據(jù)操作系統(tǒng)變成\
# 輸出:p/a/t/h/www/x/x/x/ii/i3. 從右往左看參數(shù),如果有一個(gè)參數(shù)是一個(gè)絕對(duì)路徑,則在它左邊的所有參數(shù)均會(huì)被舍棄。
Demo3
import os
print(os.path.join('path', 'www', 'xxx', 'iii'))
# 輸出:path\www\xxx\iii
print(os.path.join('path', 'w:ww', 'xxx', 'iii'))
# 輸出:w:ww\xxx\iii
print(os.path.join('path', 'w:\ww', 'x:xx', 'iii'))
# 輸出:x:xx\iii
print(os.path.join('path', 'w:\ww', 'x:xx', '/iii'))
# 輸出:x:/iii
print(os.path.join('path', 'w:\ww', 'xxx', '/iii'))
# 輸出:w:/iii
print(os.path.join('path', 'w:\ww', 'xxx', 'iii.txt'))
# 輸出:w:\ww\xxx\iii.txt
4. 如果最后一個(gè)參數(shù)為''空,則生成的路徑以一個(gè)‘\’分隔符結(jié)尾
Demo4
import os
print(os.path.join('path', 'www', 'xxx', 'iii'))
# 輸出:path\www\xxx\iii
print(os.path.join('path', 'www', 'xxx', 'iii', ''))
# 輸出:path\www\xxx\iii\5. 同時(shí)存在以‘./’與‘/’開始的參數(shù),以‘/’為主,從最后一個(gè)以‘/’開頭的參數(shù)開始拼接,之前的參數(shù)全部丟棄。
Demo5
import os
print(os.path.join('path', 'www', 'xxx', 'iii'))
# 輸出:path\www\xxx\iii
print(os.path.join('path', './www', '/xxx', 'iii'))
# 輸出:/xxx\iii
print(os.path.join('path', './www', '/xxx/', 'iii'))
# 輸出:/xxx/iii
print(os.path.join('path', 'www', '/xxx', './iii'))
# 輸出:/xxx\./iii
print(os.path.join('path', 'www', '/xxx/', './iii'))
# 輸出:/xxx/./iii6. 只存在以“. / ”開始的子路徑,而不存在以“ / ”開頭的子路徑,則會(huì)將“. / ”里面的“ . ”當(dāng)作子路徑的一部分,進(jìn)行拼接。
Demo6
import os
print(os.path.join('path', 'www', 'xxx', 'iii'))
# 輸出:path\www\xxx\iii
print(os.path.join('path', 'www', 'xxx', './iii'))
# 輸出:path\www\xxx\./iii
print(os.path.join('path', 'www', './xxx', 'iii'))
# 輸出:path\www\./xxx\iii總結(jié)
到此這篇關(guān)于Python中os.path.join函數(shù)用法的文章就介紹到這了,更多相關(guān)Python os.path.join函數(shù)用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 三分鐘熟練使用Python的os.path.join()
- python中的os.path.join使用方法詳解
- Python中os.path.join函數(shù)的用法示例詳解
- python中join與os.path.join()函數(shù)實(shí)例詳解
- python中os.path.join()函數(shù)實(shí)例用法
- 詳解python路徑拼接os.path.join()函數(shù)的用法
- 淺談python中拼接路徑os.path.join斜杠的問題
- Python中.join()和os.path.join()兩個(gè)函數(shù)的用法詳解
- Python的os.path.join坑的問題解決
相關(guān)文章
Python用Bottle輕量級(jí)框架進(jìn)行Web開發(fā)
這篇文章主要介紹了Python用Bottle輕量級(jí)框架進(jìn)行Web開發(fā)的相關(guān)資料,需要的朋友可以參考下2016-06-06
Python列表list常用內(nèi)建函數(shù)實(shí)例小結(jié)
這篇文章主要介紹了Python列表list常用內(nèi)建函數(shù),結(jié)合實(shí)例形式總結(jié)分析了Python列表list常見內(nèi)建函數(shù)的功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-10-10
PyQt5多線程實(shí)現(xiàn)UI不卡頓的解決方案
在PyQt5中,為了避免長(zhǎng)時(shí)間的操作阻塞UI界面(導(dǎo)致界面卡死),我們可以使用多線程,通常,我們將耗時(shí)的任務(wù)放在一個(gè)單獨(dú)的線程中運(yùn)行,,并通過信號(hào)與槽機(jī)制與UI線程進(jìn)行通信,以更新界面,下面是一個(gè)示例,演示了如何在更新UI的同時(shí)進(jìn)行多線程操作,確保UI界面不會(huì)卡死2026-01-01
python離線安裝requests模塊并且在pycharm中實(shí)現(xiàn)使用
文章主要介紹了如何在Python中離線安裝requests模塊及其依賴包,包括手動(dòng)下載安裝包、驗(yàn)證安裝以及在PyCharm中配置解釋器以正確識(shí)別安裝的模塊2025-11-11
Python利用omegaconf庫(kù)輕松實(shí)現(xiàn)配置文件管理
omegaconf是一個(gè)靈活且強(qiáng)大的Python配置管理庫(kù),支持YAML,dict,列表等多種數(shù)據(jù)格式,下面我們就來看看如何使用omegaconf實(shí)現(xiàn)配置文件管理吧2025-02-02
anaconda安裝pytorch1.7.1和torchvision0.8.2的方法(親測(cè)可用)
這篇文章主要介紹了anaconda安裝pytorch1.7.1和torchvision0.8.2的方法(親測(cè)可用),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02

