最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python os.path 模塊常見用法:路徑拼接、目錄操作與批量文件處理

 更新時間:2026年05月19日 09:46:22   作者:AZ-直到世界的盡頭  
os.path 模塊提供了跨平臺處理路徑的基礎(chǔ)功能,本文通過實例說明其核心用法,包括路徑拼接、目錄創(chuàng)建、文件批量復(fù)制與重命名等,感興趣的朋友一起看看吧

在日常 Python 開發(fā)中,文件和目錄操作非常頻繁。os.path 模塊提供了跨平臺處理路徑的基礎(chǔ)功能。本文通過實例說明其核心用法,包括路徑拼接、目錄創(chuàng)建、文件批量復(fù)制與重命名等。

一、路徑拼接:os.path.join()

語法:

os.path.join(path1[, path2[, ...]])

返回值:多個路徑拼接后的字符串。

注意:第一個絕對路徑之前的參數(shù)會被忽略。

示例:

import os
# 全部相對路徑
print(os.path.join('/hello/', 'good/boy/', 'doiido'))
# 輸出:/hello/good/boy/doiido
# 中間出現(xiàn)絕對路徑
print(os.path.join('/hello/', '/good/boy/', 'doiido'))
# 輸出:/good/boy/doiido   (/hello/ 被忽略)

這一特性在拼接用戶輸入或配置路徑時需要留意。

二、分離文件名和路徑

使用 os.path.basenameos.path.dirname

url = 'https://images0.cnblogs.com/i/311516/201403/020013141657112.png'
filename = os.path.basename(url)   # '020013141657112.png'
filepath = os.path.dirname(url)    # 'https://images0.cnblogs.com/i/311516/201403'

使用 os.path.split 同時獲得兩者:

parts = os.path.split('/home/user/data/file.txt')
# ('/home/user/data', 'file.txt')

三、安全創(chuàng)建目錄

先判斷目錄是否存在,再創(chuàng)建(支持多級目錄):

def mkdir(path):
    if not os.path.exists(path):
        os.makedirs(path)
        print("--- create new folder %s ---" % path)
    else:
        print("--- already have this folder! ---")

四、創(chuàng)建空文件并自動創(chuàng)建父目錄

結(jié)合 mkdiros.path.split

def create_empty_file(path):
    dir, file = os.path.split(path)
    mkdir(dir)
    open(path, "w").close()

五、批量復(fù)制特定類型文件

遞歸遍歷源目錄,將指定擴展名的文件復(fù)制到目標目錄:

import shutil
def cp_rawdata_snp_2_plate_snp_path(path, new_path):
    for root, dirs, files in os.walk(path):
        for file in files:
            if file[-3:].lower() in ('jpg', 'png'):
                src = os.path.join(root, file)
                dst = os.path.join(new_path, file)
                shutil.copy(src, dst)

六、批量重命名文件

根據(jù)映射字典修改文件名:

def rename_gtc_barcode():
    barcode_map = {"2012333_r1l2": "111-1214-1232"}
    gtc_path = config["dir.gtc_dir_path"]
    for i in os.listdir(gtc_path):
        if not i.endswith(".gtc"):
            continue
        oldname = os.path.join(gtc_path, i)
        newname = os.path.join(gtc_path, barcode_map[i.replace(".gtc", "")] + ".vcf")
        os.rename(oldname, newname)
        print(oldname, '======>', newname)

七、獲取當前目錄、上級目錄等

import os
# 當前目錄
print(os.getcwd())
print(os.path.abspath(os.path.dirname(__file__)))
# 上級目錄
print(os.path.abspath(os.path.dirname(os.getcwd())))
print(os.path.abspath(os.path.join(os.getcwd(), "..")))
# 上上級目錄
print(os.path.abspath(os.path.join(os.getcwd(), "../..")))

八、常用 os.path 方法速查

方法說明
os.path.abspath(path)返回絕對路徑
os.path.basename(path)返回文件名
os.path.dirname(path)返回目錄路徑
os.path.exists(path)路徑是否存在
os.path.isfile(path)是否為文件
os.path.isdir(path)是否為目錄
os.path.getsize(path)文件大小(字節(jié))
os.path.splitext(path)分離文件名與擴展名

九、注意事項

  1. 路徑分隔符:Windows 為 \,Linux/macOS 為 /,應(yīng)始終使用 os.path.join 拼接。
  2. 相對/絕對路徑:不確定時先用 os.path.abspath 轉(zhuǎn)換。
  3. 操作前檢查:刪除或修改文件前建議用 os.path.exists 判斷。

以上是 os.path 模塊在實際開發(fā)中的常見用法。掌握這些函數(shù)可以有效簡化文件系統(tǒng)相關(guān)的代碼,并提高跨平臺兼容性。

到此這篇關(guān)于Python os.path 模塊常見用法:路徑拼接、目錄操作與批量文件處理的文章就介紹到這了,更多相關(guān)Python os.path 模塊用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Python手搓一個生產(chǎn)級限流器

    使用Python手搓一個生產(chǎn)級限流器

    這篇文章主要為大家詳細介紹了三種生產(chǎn)級限流算法的Python實現(xiàn),即令牌桶,漏桶和滑動窗口,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2026-02-02
  • 利用Python如何畫一顆心、小人發(fā)射愛心

    利用Python如何畫一顆心、小人發(fā)射愛心

    這篇文章主要給大家介紹了關(guān)于利用Python如何畫一顆心、小人發(fā)射愛心的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 詳解用 python-docx 創(chuàng)建浮動圖片

    詳解用 python-docx 創(chuàng)建浮動圖片

    這篇文章主要介紹了詳解用 python-docx 創(chuàng)建浮動圖片,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python跨文件全局變量的實現(xiàn)方法示例

    Python跨文件全局變量的實現(xiàn)方法示例

    我們在使用Python編寫應(yīng)用的時候,有時候會遇到多個文件之間傳遞同一個全局變量的情況。所以下面這篇文章主要給大家介紹了關(guān)于Python跨文件全局變量的實現(xiàn)方法,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-12-12
  • 解析Python 偏函數(shù)用法全方位實現(xiàn)

    解析Python 偏函數(shù)用法全方位實現(xiàn)

    這篇文章主要介紹了解析Python 偏函數(shù)用法全方位實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Windows下用py2exe將Python程序打包成exe程序的教程

    Windows下用py2exe將Python程序打包成exe程序的教程

    這篇文章主要介紹了Windows下用py2exe將Python程序打包成exe程序的教程,文中主要針對Python3.x版本進行說明,需要的朋友可以參考下
    2015-04-04
  • Python Numpy中ndarray的常見操作

    Python Numpy中ndarray的常見操作

    這篇文章主要介紹了Python Numpy中ndarray的常見操作,NumPy是Python的一種開源的數(shù)值計算擴展,更多詳細內(nèi)容需要的朋友可以參考一下
    2022-07-07
  • python實現(xiàn)楊輝三角思路

    python實現(xiàn)楊輝三角思路

    本文給大家分享的是作者使用python實現(xiàn)楊輝三角的思路,非常的實用,有需要的小伙伴可以參考下
    2017-07-07
  • Python之父談Python的未來形式

    Python之父談Python的未來形式

    這篇文章主要介紹了Python之父談Python的未來,需要的朋友可以參考下
    2016-07-07
  • Numpy之random.randint產(chǎn)生隨機整數(shù)方式

    Numpy之random.randint產(chǎn)生隨機整數(shù)方式

    這篇文章主要介紹了Numpy之random.randint產(chǎn)生隨機整數(shù)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12

最新評論

略阳县| 额尔古纳市| 云阳县| 保定市| 镇原县| 吉隆县| 大连市| 无棣县| 曲周县| 宁德市| 洛阳市| 繁峙县| 永城市| 尼勒克县| 公主岭市| 漳州市| 崇仁县| 宣汉县| 屏山县| 威远县| 隆子县| 蒙自县| 军事| 孝感市| 五峰| 盘锦市| 河北省| 高台县| 曲靖市| 邓州市| 合水县| 谷城县| 汤阴县| 广饶县| 买车| 古田县| 尼木县| 进贤县| 陇西县| 阳信县| 马尔康县|