python,路径拼接,字符串拼接,os.path.join()函数怎么用?
一、os.path.join()函數(shù)的基本規(guī)則
第一步:首先看各個(gè)path參數(shù)中有無以【盤符:】或【\】開頭的字符串(\前面除了【盤符:】不能有其他),如果沒有,就會(huì)把所有參數(shù)保留,參數(shù)之間有\(zhòng)分隔。
第二步:如果有以【盤符:】開頭的字符串,(假如有多個(gè)),從最后一個(gè)開始保留。
第三步:如果有以【\】開頭的字符串,(假如有多個(gè)),從最后一個(gè)開始保留。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?拔高? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
- 【盤符:】的優(yōu)先級(jí)在【\】之前,因此如果存在【盤符:】,則之前的帶有【\】開頭的字符串會(huì)被拋棄。
- 如果最后的以【盤符:】開頭的字符串后面帶有【\path1】,并且后面還有【\】開頭的字符串(比如【\path2】),那么\path1以及后續(xù)直到\path2之前的字符串都會(huì)被拋棄。
二、代碼實(shí)現(xiàn)
只需要第一步判斷,就可以出最終結(jié)果的代碼示例如下:
print(os.path.join("BaiduNetdiskDownload","test1","test2")) # BaiduNetdiskDownload\test1\test2下面是有多個(gè)以【盤符:】開頭的字符串代碼示例:
print(os.path.join(r"D:\BaiduNetdiskDownload", r"C:", "test1", r"D:", "test2")) # D:test2下面是有多個(gè)以【\】開頭的字符串代碼示例:
print(os.path.join(r"\BaiduNetdiskDownload", r"\test1", "test2")) # D:\test1\test2下面是以【盤符:\path1】開頭的字符串中的path1部分被后續(xù)的\path2部分替代的示例:
print(os.path.join(r"D:\BaiduNetdiskDownload", r"\test1"))# D:\test1下面是有多個(gè)以【盤符:】和多個(gè)【\】開頭字符串代碼示例:
print(os.path.join(r"D:\BaiduNetdiskDownload", "C:", r"\test1", "test1.1", r"\test2", "test3")) # C:\test2\test3三、補(bǔ)充知識(shí)
舉一個(gè)路徑例子:【D:\ChromeCoreDownloads】,其中【\】代表路徑分隔符。
而如果路徑中包含雙點(diǎn)號(hào),例如【D:\ChromeCoreDownloads\test1\..\test2】,那么這個(gè)【..】就是對(duì)上一級(jí)目錄的引用,也就是說【D:\ChromeCoreDownloads\test1\..\test2】的標(biāo)準(zhǔn)化路徑(真實(shí)路徑,也稱絕對(duì)路徑abspath)就是【D:\ChromeCoreDownloads\test2】。
print(os.path.realpath(r'D:\ChromeCoreDownloads\test1\..\test2')) print(os.path.abspath(r'D:\ChromeCoreDownloads\test1\..\test2')) print(os.path.normpath(r'D:\ChromeCoreDownloads\test1\..\test2')) # 上面3行的輸出結(jié)果都是D:\ChromeCoreDownloads\test2四、參考來源
os.path --- 常用路徑操作 — Python 3.10.2 文檔
python路徑拼接os.path.join()函數(shù)完全教程_開貳錘-CSDN博客_python路徑拼接
Python os.path.join()用法及代碼示例 - 純淨(jìng)天空
總結(jié)
以上是生活随笔為你收集整理的python,路径拼接,字符串拼接,os.path.join()函数怎么用?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020 超分辨率技术发展趋势
- 下一篇: 使用Python获取春节档电影影评,制作